jaq
ojg
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
jaq
- Jaq
-
Jaq – A jq clone focused on correctness, speed, and simplicity
https://github.com/01mf02/jaq/blob/main/Cargo.lock
That's a lot of dependencies..
-
Interactive Examples for Learning Jq
Thanks for the jqjq shoutout! :) i'm quite sure jq is turing complete, jq (and jqjq!) can implement brainfuck https://github.com/01mf02/jaq/blob/main/examples/bf.jq
-
This is a very old theme, solved by Pike and Kernigan since 1984, in section 5.5 (Replacing a file: overwrite), page 155 in the book
/uj Because of this post, I have learned I could have been using jaq instead of jq.
-
A new major version of jql has been released
There's also jaq which is written in Rust, aims for compatibility with jq (except some specific features), and boasts better performance.
-
Fx - a lightweight jq alternative
jaq is closer to that
-
can't swp layout
if [[ $(hyprctl -j getoption general:layout | jaq -r '.str') = "master" ]]; then hyprctl keyword general:layout "dwindle" else hyprctl keyword general:layout "master" fi you'll need https://github.com/01mf02/jaq
-
launcher script scratchpad special ws
You will need https://github.com/01mf02/jaq
-
Miller: Like Awk, sed, cut, join, and sort for CSV, TSV, and tabular JSON
I've been getting a lot of mileage out of https://github.com/itchyny/gojq#readme recently due to two things: its vastly superior error messages and the (regrettably verbose) `--yaml-input` option
I also have https://github.com/01mf02/jaq#readme installed but just haven't needed it
ojg
-
Interactive Examples for Learning Jq
I found Jq to be difficult to use which is why Oj, https://github.com/ohler55/ojg is based on JSONPath. There still are a lot of options but it only takes a couple of help screens to figure out what the options are.
-
Building a high performance JSON parser
You might want to take a look at https://github.com/ohler55/ojg. It takes a different approach with a single pass parser. There are some performance benchmarks included on the README.md landing page.
-
A Journey building a fast JSON parser and full JSONPath
I like the "Simple Encoding Notation" (SEN) of the underlying library: https://github.com/ohler55/ojg/blob/develop/sen.md
- Oj Is on Tap
- SEN: Simple Encoding Notation
- The fastest tool for querying large JSON files is written in Python (benchmark)
-
FX: An interactive alternative to jq to process JSON
Another alternative is the oj app (ojg/cmd/oj) which is part of https://github.com/ohler55/ojg. It relies on JSONPath for extraction and manipulation of JSON.
- Go 1.17 Release Notes
-
OjG now has a tokenizer that is almost 10 times faster than json.Decode
I promise to add more examples but in the mean time there are the test files. The one for Unmarshal is https://github.com/ohler55/ojg/blob/develop/oj/unmashall_test.go
- The Pretty JSON Revolution
What are some alternatives?
jql - A JSON Query Language CLI tool
jsonparser - One of the fastest alternative JSON parser for Go that does not require schema
partiql-lang-rust - PartiQL libraries and tools in Rust.
jsonic - All you need with JSON
jq - Command-line JSON processor
fastjson - Fast JSON parser and validator for Go. No custom structs, no code generation, no reflection
gojq - Pure Go implementation of jq
ask - A Go package that provides a simple way of accessing nested properties in maps and slices.
jqp - A TUI playground to experiment with jq
jettison - Highly configurable, fast JSON encoder for Go
utt - utt is the universal text transformer
json2go - Create go type representation from json