SkillAgentSearch skills...

Muon

µON - a compact and simple binary object notation

Install / Use

/learn @vshymanskyy/Muon
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

µON [muon]

A compact and simple object notation. µ[mju:] stands for "micro".

Muon on Twitter

File extension:     .mu
MIME type:          application/muon
Endianness:         little-endian
Signature/Magic:    optional, 8F B5 30 31 ["�µ01"] @ 0x0

Muon has some interesting properties (see presentation and docs):

  • Every null-terminated UTF8 string is at the same time a valid muon object
  • Gaps in the UTF8 encoding space (code units) are used to encode things like [ ] { } etc.
  • Muon is self-describing and schemaless, just like JSON (unlike Protobuf and FlatBuffers)
  • Compact (~10..50% smaller than JSON). On par or outperforms CBOR, MsgPack, UBJSON
  • Unlimited size of objects and values
  • Data is ready to be used in-place without pre-processing
  • Supports raw binary data (values and TypedArrays)
  • Can optionally contain count of elements (and size in bytes) of all structures for efficient document processing, similar to BSON

Future goals:

  • Strict specification (little or no room for implementation-specific behavior / vendor-specific extensions)

Try it yourself

python3 muon_py/json2mu.py ./data/AirlineDelays.min.json ./AirlineDelays.mu
python3 muon_py/mu2json.py ./AirlineDelays.mu > ./AirlineDelays.json

Run benchmarks:

python3 muon_py/extra/json-analyze.py ./data/*.json ./data/small/*.json
python3 muon_py/mu-benchmark.py ./data/*.json ./data/small/*.json

Muon structure

Muon diagram

See more in documentation.

Disclaimer: the notation is still Work In Progress. If you have any ideas or comments, please feel free to post them here.


Stand With Ukraine

Related Skills

View on GitHub
GitHub Stars268
CategoryDevelopment
Updated4d ago
Forks6

Languages

Python

Security Score

100/100

Audited on Mar 23, 2026

No findings