go-jsonschema
ojg
go-jsonschema | ojg | |
---|---|---|
2 | 17 | |
513 | 799 | |
- | - | |
9.1 | 7.0 | |
7 days ago | 16 days ago | |
Go | Go | |
MIT License | MIT License |
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.
go-jsonschema
-
Building a high performance JSON parser
For json schema specifically there are some tools like go-jsonschema[1] but I've never used them personally. But you can use something like ffjson[2] in go to generate a static serialize/deserialize function based on a struct definition.
[1] https://github.com/omissis/go-jsonschema
-
JSON Schema generator
What I have tried: https://github.com/atombender/go-jsonschema gave that a spin and wasn't able to generate any successful types from the few items under objects I tried.
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?
ocsf-schema - OCSF Schema
jsonparser - One of the fastest alternative JSON parser for Go that does not require schema
ffjson - faster JSON serialization for Go
jsonic - All you need with JSON
graphql-go-tools - GraphQL Router / API Gateway framework written in Golang, focussing on correctness, extensibility, and high-performance. Supports Federation v1 & v2, Subscriptions & more.
fastjson - Fast JSON parser and validator for Go. No custom structs, no code generation, no reflection
jsoncut
ask - A Go package that provides a simple way of accessing nested properties in maps and slices.
sonic - A blazingly fast JSON serializing & deserializing library
jettison - Highly configurable, fast JSON encoder for Go
muon - µON - a compact and simple binary object notation
json2go - Create go type representation from json