jackson-jq
fq
jackson-jq | fq | |
---|---|---|
2 | 45 | |
270 | 9,417 | |
- | - | |
5.3 | 9.4 | |
6 days ago | 6 days ago | |
Java | Go | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 or later |
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.
jackson-jq
-
jq 1.7 Released
So just picking Java https://github.com/eiiches/jackson-jq
> jackson-jq aims to be a compatible jq implementation. However, not every feature is available; some are intentionally omitted because thay are not relevant as a Java library; some may be incomplete, have bugs or are yet to be implemented.
Where JMESPath has fully compliant 1st party implementations in Python, Go, Lua, JS, PHP, Ruby, and Rust and fully compliant 3rd party implementations in C++, Java, .NET, Elixer, and TS.
Having a spec and a test suite means that a all valid JMESPath programs will work and work the same anywhere you use it.
fq
-
How to Use JSON Path
I see, thanks for replying and no worries! yeap some of the "self-describing" formats like msgpack, cbor etc will because of how fq works have to be decoded into something more of a meta-msgpack etc.
About blobs, if you want to change how (possibly large) binaries are represented as JSON you can use the bits_format options, see https://github.com/wader/fq/blob/master/doc/usage.md#options, so fq -o bits_format=md5 torepr ...
I can highly recommend to learn jq, it's what makes fq really useful, and as a bonus you will learn jq in general! :)
-
Reverse-engineering an encrypted IoT protocol
Hey! fq author here. I have a bunch of related tools in the readme https://github.com/wader/fq?tab=readme-ov-file#tools two suggestions: gnu poke and wireshark (can decode lots of more things then just network protocol)
-
To a Man with `Jq`, Everything Looks Like JSON
Did someone say let's represent structured data as json? a bit of shameless plug: https://github.com/wader/fq :) It's using a fork of gojq btw!
-
Jaq – A jq clone focused on correctness, speed, and simplicity
https://github.com/wader/fq has a REPL and can read JSON. Tip is to use "paste | from_json | repl" in a REPl to paste JSON into a sub-REPL, you can also use `` with fq which is a raw string literal
-
jq 1.7 Released
I do lots of exploratory work in various structure data, in my case often debugging media filea via https://github.com/wader/fq, which mean doing lots of use-once-queries on the command line or REPL. In those cases jq line-friendly and composable syntax and generators really shine.
- fq (jq for binary formats) has a new v0.7.0 version
- FLaNK Stack 5-June-2023
- fq: jq for binary formats - tool, language and decoders for working with binary and text formats
- Fq: Jq for Binary Formats
- GitHub - wader/fq: jq for binary formats - tool, language and decoders for working with binary and text formats
What are some alternatives?
libnbd
jq - Command-line JSON processor [Moved to: https://github.com/jqlang/jq]
jq-mode - Emacs major mode for editing jq queries.
jq - Command-line JSON processor
nbdkit
Kaitai Struct - Kaitai Struct: declarative language to generate binary data parsers in C++ / C# / Go / Java / JavaScript / Lua / Nim / Perl / PHP / Python / Ruby
java-jq - Lightweight Java wrapper around JQ, a flexible JSON processor available for multiple platforms
HexFiend - A fast and clever hex editor for macOS
Newman - Newman is a command-line collection runner for Postman
nq - Unix command line queue utility
jet - CLI to transform between JSON, EDN, YAML and Transit using Clojure
miller - Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON