Ultimate high-performance binary serialization library for C#.
Ultimate high-performance binary serialization library for C#.
Seamless Integration
Leverages C# Source Generators for automatic compile-time code generation. Zero manual setup required.
⚡ Blazing Performance
Engineered for high-throughput, low-latency scenarios with minimal GC pressure and memory allocation.
Unity Compatible
Works seamlessly with Unity projects and native Unity data types like Vector3 and Quaternion.
️ Advanced Features
Handles complex scenarios like polymorphism, versioning, custom constructors, and private member serialization.
int, float, DateTime, etc.)records, record structs, structs, classes, and genericsIEnumerable including List, Dictionary, HashSet, ConcurrentDictionaryDictionary>ValueTuple, Tuple, KeyValuePair, NullableVector3, Quaternion, Matrix4x4, and other Unity-specific data types[NinoConstructor] for immutable types and factory patterns[NinoMember] ordering and [NinoFormerName] for backward compatibility[NinoType(true)] to include private/protected members[NinoIgnore] to exclude specific fields[NinoUtf8] for efficient UTF-8 string handlingStandard .NET Projects:
dotnet add package NinoUnity Projects (via OpenUPM):
openupm add com.jasonxudeveloper.nino[NinoType]
public class GameData
{
public int Score;
public string PlayerName;
public DateTime LastPlayed;
}
// Serialize
var data = new GameData { Score = 1000, PlayerName = "Player1", LastPlayed = DateTime.Now };
byte[] bytes = NinoSerializer.Serialize(data);
// Deserialize
var restored = NinoDeserializer.Deserialize(bytes);Nino consistently delivers exceptional performance across various scenarios. See detailed benchmarks and comparisons with other popular serialization libraries.
No open issues yet, or sync has not completed.