norns-tron
TRON serialization for the Norns ecosystem — a token-efficient, faster-than-JSON wire format for APIs and LLM-facing output, with zero runtime dependencies.
TRON cuts 11–61% of tokens compared to JSON and, used correctly, beats JSON.parse / JSON.stringify on decode, encode and round-trip. Plain JSON is valid TRON, so adoption is progressive and rollback is one line.
The encoder/decoder core is absorbed from the apitron research library; this package adds the Norns glue as subpath exports:
| Import | Contents |
|---|---|
@human-synthesis/norns-tron |
encode, decode, defineSchema, createRegistry, columnar helpers, WASM controls |
@human-synthesis/norns-tron/server |
tronSerializer() for route() and boot() |
@human-synthesis/norns-tron/client |
api / createApi() fetch wrapper that speaks TRON |
@human-synthesis/norns-tron/valibot |
derive wire schemas from valibot schemas |
bun add @human-synthesis/norns-tronvalibot is an optional peer, needed only for the /valibot subpath.
#Where to start
- Turn it on app-wide — one option in
boot(), content-negotiated. - Call it from the client
- Schema mode — the fastest path for internal endpoints.
- Semantics and limits
- Performance guide