ojg
rq
Our great sponsors
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.
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
rq
- Jc – JSONifies the output of many CLI tools
-
Shell Script Best Practices, from a decade of scripting things
Not sure what it is doing more...I'm referring to this rq: https://github.com/dflemstr/rq#format-support-status
It converts to/from the listed formats.
There is also `jc` (written in Python) with the added benefit that it converts output of many common unix utilities to json. So you would not need to parse `ip` for example.
https://github.com/kellyjonbrazil/jc
-
What debugging/monitoring method do you use? Lately, I have been using the Saleae Logic Analyzer to monitor the signals exchanged among the boards of my embedded network. I find it really cool, but do you have any other recommendations? What do you use?
In robotics most relevant signals are seen by the software. My current pattern is to log everything to MessagePack files (e.g. using mpacklog in Python or palimpsest in C++), then dump and plot the data later on using handy command-line tools like jq and rq.
- Tombl – Easily query .toml files from bash
- rq: Universal convertor between structured data (JSON, MessagePack, CBOR, etc.)
- Show HN: utt, the Universal Text Transformer
- FX: An interactive alternative to jq to process JSON
- Tips on Adding JSON Output to Your CLI App
-
Miller CLI – Like Awk, sed, cut, join, and sort for CSV, TSV and JSON
There's also rq (record query)[1] that also supports CSV and JSON but not TSV though. It's written in Rust.
[1] https://github.com/dflemstr/rq
-
What's everyone working on this week (27/2021)?
Ish. https://github.com/dflemstr/rq/ It removed its processing language a while ago. It's still a very useful tool, though. Imho, it's a bigger pity that it can't highlight YAML on output, or parse YAML 1.1.
What are some alternatives?
jsonparser - One of the fastest alternative JSON parser for Go that does not require schema
fx - Terminal JSON viewer & processor
jsonic - All you need with JSON
if-decompiler - Decompile Glulx storyfiles into C code
fastjson - Fast JSON parser and validator for Go. No custom structs, no code generation, no reflection
jiq - jid on jq - interactive JSON query tool using jq expressions
ask - A Go package that provides a simple way of accessing nested properties in maps and slices.
hello-actix - Hello, actix!
jettison - Highly configurable, fast JSON encoder for Go
jq - Command-line JSON processor [Moved to: https://github.com/jqlang/jq]
json2go - Create go type representation from json
dprint - Pluggable and configurable code formatting platform written in Rust.