RX random-access JSON format
Ranked 7 of 9 serialization formats by recommenders
Developers recommend it as a compact, random-access format for embedded data, with fast key lookups. Critics say it is not a drop-in JSON.parse replacement and the docs need work.
Developers recommend it as a compact, random-access format for embedded data, with fast key lookups. Critics say it is not a drop-in JSON.parse replacement and the docs need work.
24 people gave an opinion
- recommend it
- 11
- criticize it
- 13
- approval share
- 46%
Recommended in 4 of 13 months
- November 2025: not recommended
- December 2025: recommended
- January 2026: recommended
- February 2026: not recommended
- March 2026: recommended
- April 2026: not recommended
- May 2026: not recommended
- June 2026: not recommended
- July 2026: recommended
- August 2026: not recommended
- September 2026: not recommended
- October 2026: not recommended
- November 2026: not recommended (month in progress)
Why it doesn’t carry the badge
- 11 people recommend itNeeds 10 or more, met.
- 0.8 recommenders for every criticNeeds 2 to 1 or better, not met.
- Recommended in 4 of 13 monthsNeeds 4 or more, met.
The same three rules apply to every product, and the badge can’t be bought. How the badge works
What people say about it
The reasons people give, with the number of comments that give each one. Open a reason to read what they said.
Why people recommend it
Each mark is one comment
Works well as embedded read-only data
“This format really excels for use cases where large read-only build artifacts are queried by worker nodes like an embedded database.”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” “rx works very well as a kind of embedded database like sqlite, but completely unstructured like JSON”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” “this would work very well for any case where you have embedded databases of unstructured data”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” Fast selective access and key lookups
“Low heap allocations when reading values is one of the main driving factors in this design!”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” “rx preserves object key order, but still implements O(log2 N) lookups for object keys.”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” “That's the part where something like RX with selective access actually matters.”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” - Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative”
Works as a standalone format
“when I realized it's actually a good standalone format”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” “it was actually a pretty good standalone format”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” Built-in queries and JSON support
“It has jq like queries built in and supports inputs with either rx or json.”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” “RX can represent any value JSON can represent.”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative”
What people warn about
Each mark is one comment
Hard to read by hand
“That kind of feels a bit worst of both worlds. None of the space savings/efficiency of binary but also no human readability.”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” “And to consider that anyone else would fill their brain with the rules to decipher that”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” “Came to the same conclusion the moment I had to hunt to see the outputs”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” Docs unclear or incomplete
“The documentation reference a “decode” function, and it’s imported to the example code, but it’s never called.”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” “It doesn't seem the actual serialization format is specified?”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative” “it might be a matter of cleaning up the docs a bit”
Comment from 19 Mar 2026 in “RX – a new random-access JSON alternative”
Other serialization formats people recommend
The four most recommended other serialization formats, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.
| Product | Recommend | Criticize | Approval | Months | Owned | Badge |
|---|---|---|---|---|---|---|
| Protocol Buffers (protobuf) | 77 | 66 | 54% | 10 | 10 yrs3 owners | — |
| Serde | 22 | 16 | 58% | 10 | — | — |
| Cap'n Proto | 20 | 5 | 80% | 7 | — | Approved |
| Protobuf | 19 | 25 | 43% | 8 | — | — |
| RX random-access JSON formatThis page | 11 | 13 | 46% | 4 | — | — |
What people said
40 of the 44 comments that mention it, newest first. Each links to the original comment.
“when I load a 192kHz recording to izotope RX I can literallu see the harmonics going up to 96kHz”
“I find Rx (js, java, C#, etc) to be overly complicated in general.”
“I started out with binary encodings first, but then realized it limits so many workflows.”
“Very similar to bittorrent's bencode. That has the benefit that it has a canonical encoding which this doesn't”
“And to consider that anyone else would fill their brain with the rules to decipher that”
“RX, however matches Lua/LuaJIT extremely well and should out-perform the JS Proxy based decoder using metatables.”
“RX can represent any value JSON can represent.”
“That benchmark is a fair comparison for a real-world production workload and use case.”
“there are cases where JSON is currently used where this is much better”
“it was actually a pretty good standalone format”
“rx preserves object key order, but still implements O(log2 N) lookups for object keys.”
“it might be a matter of cleaning up the docs a bit”
“The current implementation is pretty close to ideal when deciding to use this encoding.”
“this would work very well for any case where you have embedded databases of unstructured data”
“This system with RX will work better because I get the indexes built-in to the data file”
“It's the unique combination of properties that makes it interesting.”
“The documentation reference a “decode” function, and it’s imported to the example code, but it’s never called.”
“The 23,000x faster single-key lookup seems a bit misleading to me.”
“I was instantly suspicious that a “new better format” for serialization didn’t open with the input/output.”
“this is exactly the kind of use case that caused me to design this format”
“Low heap allocations when reading values is one of the main driving factors in this design!”
“when I realized it's actually a good standalone format”
“But with this format, I can use the text as-is with zero preprocessing and as a bonus my datasets are 18x smaller.”
“for my use cases, this is actually better”
“rx works very well as a kind of embedded database like sqlite, but completely unstructured like JSON”
“Also note it stores decimal in a very compact encoding (two varints for base and power of 10)”
“It's also quite odd to create a serialization format optimized for random access.”
“same document as my json compressed to 110kb, so this is not great... 2x the size of json after compression”
“Came to the same conclusion the moment I had to hunt to see the outputs”
“It doesn't seem the actual serialization format is specified?”
“lets you read it without putting all the entities on the heap”
“That's the part where something like RX with selective access actually matters.”
“The viewer is cool, took me a while to find the link to it though”
“That kind of feels a bit worst of both worlds. None of the space savings/efficiency of binary but also no human readability.”
“It has jq like queries built in and supports inputs with either rx or json.”
“This format really excels for use cases where large read-only build artifacts are queried by worker nodes like an embedded database.”
“it is not in fact a drop in replacement for JSON.parse”
“usually easier to read, write and maintain than regexp strings”
“Rx in particular tends to exceed that budget pretty quickly.”
“were pretty useful in this regard”
Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.