hujson
ron
hujson | ron | |
---|---|---|
10 | 24 | |
564 | 3,135 | |
0.9% | 1.6% | |
0.0 | 7.6 | |
6 months ago | 24 days ago | |
Go | Rust | |
BSD 3-clause "New" or "Revised" License | Apache License 2.0 |
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.
hujson
- JSON for Humans (JWCC: JSON with comments and trailing commas)
-
Ron: Rusty Object Notation
That, and comments!
Personally, I really hope Human JSON, https://github.com/tailscale/hujson , will take over!
-
Unmarshal text with Go reflection - usage and internals of a library for line-oriented text
I also like the approach that the hujson library takes, where everything is a type Literal []byte and you can call (Literal).Bool(), (Literal).String(), (Literal).Int() or (Literal).Float() on it and it gives you the corresponding value out of it (or the zero value). So kinda like dynamic variables that can store anything.
-
Internet Object – A JSON alternative data serialization format
One of the variants that permit comments: https://github.com/tailscale/hujson
- HuJSON - JSON for Humans (comments and trailing commas)
- Tailscale/hujson: HuJSON: JSON for Humans (comments and trailing commas)
ron
-
XML is better than YAML
Whenever this kind of arguments come up, I am sad that RON (https://github.com/ron-rs/ron) is not better known. To me it feels like a cleaner and better JSON.
In any case, my little experience with it had made me hate YAML. Generally speaking, I have come to dislike any language with significant whitespace other than Haskell.
-
What config format do you prefer?
Part of the reason why I migrated away from RON in system76-scheduler is because I needed to rely on the 253-untagged-enums branch from https://github.com/MomoLangenstein/ron. Which still isn't resolved today: https://github.com/ron-rs/ron/pull/451.
-
Ron: Rusty Object Notation
Serde is strongly, strictly typed: you have to specify what type you want to decode to. It’s nothing like Python’s Pickle protocol.
See, for example, https://github.com/ron-rs/ron/blob/484fcab0686dfd18c7e29b6c1..., where it (in a type-inferency way) says “parse as Config”.
- JSON vs. XML with Douglas Crockford
- Ron – Rusty Object Notation
- They're rebuilding the Death Star of complexity
What are some alternatives?
zed - A novel data lake based on super-structured data
toml.io - Source Code for toml.io
jsonschema-key-compression - Compress json-data based on its json-schema while still having valid json
json5 - JSON5 — JSON for Humans
set - Package set is a small wrapper around the official reflect package that facilitates loose type conversion and assignment into native Go types.
kdl - the kdl document language specifications
Dixy - Data format based on dictionaries
minimal-yaml - A minimalist, zero-copy parser for a strict subset of the Yaml specification.
simdjson - Parsing gigabytes of JSON per second : used by Facebook/Meta Velox, the Node.js runtime, ClickHouse, WatermelonDB, Apache Doris, Milvus, StarRocks
yaml-reference-parser
typescript-json-schema - Generate json-schema from your Typescript sources