{"repo":"creationix/rx","free":true,"listed":false,"github":"https://github.com/creationix/rx","clone":"git clone https://github.com/creationix/rx.git","description":"RX encoder, decoder, and CLI data tool","language":"TypeScript","stars":382,"topics":["database","random-access","rex","rx","serialization","text-encoding"],"license":"MIT","category":"databases-storage","readme_excerpt":"RX Data Store RX is an embedded data store for JSON-shaped data. Encode once, then query the encoded document in place — no parsing, no object graph, no GC pressure . Think of it as no-SQL SQLite : unstructured data with database-style random access. When encoding as RX, pointers deduplicate automatically: ^z reuses \"apple\", ^h reuses the shared key layout. The encoded form is queryable as-is — no parsing step, just direct reads from the buffer. Benchmarked on a real 92 MB deployment manifest with 35,000 route keys: JSON RX --- ------ ----- Size 92 MB 5.1 MB Look up one route 69 ms (full parse) 0.003 ms ( 16 index hops) Heap allocations 2,598,384 10 --- When to use RX RX sits in a specific gap: your data is too large for JSON's parse-everything model, but too unstructured for SQLite or Protobuf. Good fits: - Build manifests, route tables, deployment artifacts — written once, read sparsely - Embedded datasets in browsers, edge runtimes, or worker processes - Any workflow where full-document parsing is the bottleneck Bad fits: - Small documents where JSON parsing is already cheap - Human-authored config files - Write-heavy or mutable data (use a real database) - Minimizing compressed transfer size (gzip/zstd will beat RX) - Data that maps cleanly to tables (use SQLite) or a fixed schema (use Protobuf) Typical workflow 1. A build or deploy step produces a large JSON-shaped artifact. 2. Encode it to RX once. 3. Runtimes read only the values they need — O(1) array access, O(log n)","default_branch":null,"files":null,"tree":[],"storefront":"/r/creationix","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/creationix/rx/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}