ojg
aioli
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
aioli
-
Interactive Examples for Learning Jq
I am using https://github.com/biowasm/aioli which provides a already compiled wasm jq along with all the related support code for calling it
-
Show HN: Jq Play in the Browser via Web Assembly
I, and many others, use jq play[0] a lot to craft queries.
However, jqplay.org sends everything to a back end behind the scene, so it can be slow for big input json, and not great for privacy.
Someone recently integrated jq compiled to web assembly in aioli.js[1], so I decided to make a jq play clone that runs in the browser.
It does not support sharing a query, but it's minimal, and does what I need for now.
[0]: https://jqplay.org/
[1]: https://github.com/biowasm/aioli
What are some alternatives?
jsonparser - One of the fastest alternative JSON parser for Go that does not require schema
webassemblyjs - Toolchain for WebAssembly
jsonic - All you need with JSON
biowasm - WebAssembly modules for genomics
fastjson - Fast JSON parser and validator for Go. No custom structs, no code generation, no reflection
gnomad-browser - Explore gnomAD datasets on the web
ask - A Go package that provides a simple way of accessing nested properties in maps and slices.
localpdfmerger - Merge PDFs, optimize PDFs, and extract Information like Images from PDF Files locally inside your Browser
jettison - Highly configurable, fast JSON encoder for Go
banana_split - Shamir's Secret Sharing for people with friends
json2go - Create go type representation from json
PostGUI - A React web application to query and share any PostgreSQL database.