📈 GH Trending Explorer 🎲 Surprise me

← all repos

CAPCOM-TD-OSS / REDox

git clone https://github.com/CAPCOM-TD-OSS/REDox.git v1.0.3 · 4d ago

High-performance, token-based structured data engine for .NET. A core component of REX, the technology behind CAPCOM's next-generation game engine.

—
stars, 24h
—
stars, 7 days
+1.7k
stars, 30 days · #192
1.7k
★ total
63
forks · 0 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageC#
LicenseApache-2.0
Created2026-09-30 (20d ago)
Last push1d ago
Watchers20
OwnerOrganization

Links

README excerpt
# RE:Dox
## 1. What is RE:Dox?
**RE:Dox** is a high-performance, token-based structured data engine for .NET, developed as one of the core components of **'REX' Technology** for CAPCOM's next-generation game engine.
RE:Dox is not just a JSON serializer. It parses structured data into a compact, fixed-size **token DOM / IR**, then uses that structural index for reading, editing, format conversion, serialization, deserialization, and automatic parallel deserialization.
 [code] 
The same token representation acts as both a compact parsed document model and a common structural layer shared by serializers, converters, and supported formats.
## 2. Why should I care?
RE:Dox combines three goals that usually conflict:
* the **parse speed of a tape DOM** (`System.Text.Json.JsonDocument`),
* the **editability of a node DOM** (`System.Text.Json.Nodes.JsonNode`),
* the **flexibility of `Newtonsoft.Json`** (position-independent `$type`, `$id` / `$ref`, out-of-order constructor binding).
What you get:
* **High-performance serialization and deserialization** — on the benchmark datasets below, up to **~1.8x** faster sequential deserialization, up to **~2.8x** faster automatic parallel deserialization, and up to **~1.6x** faster serialization than System.Text.Json.
* **Lower allocation on tested workloads** — for example, `canada.json` deserializes with about **2.56 MB** allocated by RE:Dox versus about **8.53 MB** by System.Text.Json.
JSON, JSON5, CBOR, MessagePack, INI, and DOX are integrated with the core model; TOML, XML, HTML, and CSV are currently preview components.
* **One converter model across formats** — `DataConverter ` targets the format-agnostic `DataReader` / `DataWriter` abstractions instead of a specific wire format.
* **Mutable token DOM** — edit objects and arrays without replacing the document with a heavyweight managed object tree.
* **Trivia-preserving JSON5 editing** — comments and other preserved trivia can survive document edits and re-encoding.
* **Compatibility layers** for System.Text.Json, Newtonsoft.Json, and DataContractJsonSerializer.
* **Apache-2.0 licensed.**
## 3. 30-second example
Install the core package:
 [code] 
Serialize, deserialize, parse, and edit through the same API surface:
 [code] 
## 4. Performance
Environment: BenchmarkDotNet, .NET 10 (X64 RyuJIT x86-64-v3), AMD Ryzen Threadripper PRO 5975WX, Windows 11.
### Summary: speedup vs System.Text.Json `JsonSerializer`
| Dataset | Deserialize | Deserialize (parallel) | Serialize |
| ------------------- | ----------: | ---------------------: | --------: |
| `canada.json` | **1.68x** | **2.84x** | **1.06x** |
| `citm_catalog.json` | **1.77x** | **2.25x** | **1.62x** |
| `twitter.json` | **1.36x** | **2.34x** | **1.42x** |
These ratios describe the benchmark datasets shown below; they are not universal performance guarantees.
### Deserialize: `canada.json` (numeric-heavy, ~2.2 MB)
### Deserialize: Mean / Allocated
| Dataset | RE:Dox | RE:Dox (parallel) | System.Text.Json | S