{"repo":"mus-format/mus-go","free":true,"listed":false,"github":"https://github.com/mus-format/mus-go","clone":"git clone https://github.com/mus-format/mus-go.git","description":"MUS format serializer for Go","language":"Go","stars":143,"topics":["golang","serialization","codegen","data-validation","high-performance","zero-allocation","mus-format"],"license":"MIT","category":"dev-tools","readme_excerpt":"mus: A High-Performance, Flexible Binary Serialization Library for Go mus is a powerful and versatile Go library for efficient binary serialization. While originally built for the MUS format, its minimalist architecture and extensive set of serialization primitives make it ideal for implementing other binary formats (including Protobuf-style encoding). A streaming version is also available: mus-stream. Why mus? Performance - Optimized for maximum speed (see benchmarks). - Offers space-efficient binary representation. - Has zero-allocation mode. Capabilities In addition to 32/64-bit compatibility and private field access, the library provides: - Typed serialization (versioning, oneof ). - Comprehensive pointers support (handles cyclic graphs and linked lists). - Validation during unmarshalling. - Data skipping (enables out-of-order and partial unmarshalling). Contents - mus: A High-Performance, Flexible Binary Serialization Library for Go - Why mus? - Performance - Capabilities - Contents - Quick Start - Code Generation (Recommended) - How To - Packages - varint - raw - ord (ordinary) - unsafe - pm (pointer mapping) - typed (data type metadata support) - Structs Support - More Features - Testing - Fuzz Testing - Benchmarks - Contributing \\& Security - Version Compatibility - Used By Quick Start Here's an example of how to use mus to serialize a number. Code Generation (Recommended) Implementing mus serializers manually can be tedious and error-prone. There are two ways to auto","default_branch":null,"files":null,"tree":[],"storefront":"/r/mus-format","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/mus-format/mus-go/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."}