Skip to content

JasonXuDeveloper/Nino

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nino

Ultimate high-performance binary serialization library for C#.

build license nino.nuget openupm

Official Website

Plausibly the fastest and most flexible binary serialization library for C# projects.

Activity

Features

  • Support all unmanaged types (int/float/DateTime/Vector/Matrix, etc)

  • Support ValueTuple/Tuple/KeyValuePair of supported types

  • Support all custom interfaces/classes/structs/records/record structs annotated with [NinoType] (including generics, support custom constructor for deserialization)

  • Support all IEnumerable<SupportedType> types (List, Dictonary, ConcurrentDictonary, Hashset, ArraySegment, Stack, ReadOnlyList etc)

  • Support all Span<SupportedType> types

  • Support all Nullable<SupportedType> types

  • Support all Embed serializable types (i.e. Stack<Dictionary<Int, List<SupportedType[]>[]>[]>)

  • Support polymorphism

  • High performance with low GC allocation

  • Support type check (guarantees data integrity)

  • Support version compatibility (i.e. adding fields, changing field type, etc)

  • Support cross-project (C# Project) type serialization (i.e. serialize a class with member of types in A.dll from B.dll)

Quick Start

Documentation

Performance

Microbenchmark