Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jasonxudeveloper/nino
Ultimate high-performance binary serialization library for C#.
https://github.com/jasonxudeveloper/nino
c-sharp csharp deserialization dotnet godot serialization unity
Last synced: 1 day ago
JSON representation
Ultimate high-performance binary serialization library for C#.
- Host: GitHub
- URL: https://github.com/jasonxudeveloper/nino
- Owner: JasonXuDeveloper
- License: mit
- Created: 2022-04-25T06:46:43.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-18T01:19:34.000Z (about 2 months ago)
- Last Synced: 2025-01-02T21:06:36.740Z (9 days ago)
- Topics: c-sharp, csharp, deserialization, dotnet, godot, serialization, unity
- Language: C#
- Homepage: https://nino.xgamedev.net
- Size: 6.14 MB
- Stars: 498
- Watchers: 14
- Forks: 46
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Nino
Ultimate high-performance binary serialization library for C#.
![build](https://img.shields.io/github/actions/workflow/status/JasonXuDeveloper/Nino/.github/workflows/ci.yml?branch=main)
![license](https://img.shields.io/github/license/JasonXuDeveloper/Nino)
[![nino.nuget](https://img.shields.io/nuget/v/Nino?label=Nino)](https://www.nuget.org/packages/Nino)
[![openupm](https://img.shields.io/npm/v/com.jasonxudeveloper.nino?label=openupm®istry_uri=https://package.openupm.com)](https://openupm.com/packages/com.jasonxudeveloper.nino/)[Official Website](https://nino.xgamedev.net/en/)
Plausibly the fastest and most flexible binary serialization library for C# projects.
![Activity](https://repobeats.axiom.co/api/embed/a9aea9d0b7b75f40c14af83e3c1f20eca39486c4.svg "Repobeats analytics image")
## Features
- Support all **unmanaged types** (`int`/`float`/`DateTime`/`Vector`/`Matrix`, etc)
- Support all custom `interfaces`/`classes`/`structs`/`records` annotated with **[NinoType]** (including `generics`,
support custom constructor for deserialization)- Support all **`ICollection`** types (`List`, `Dictonary`, `ConcurrentDictonary`, `Hashset`, etc)
- Support all **`Span`** types
- Support all **`Nullable`** types
- Support all **Embed** serializable types (i.e. `Dictionary>`)
- Support **polymorphism**
- High **performance** with low GC allocation
- Support **type check** (guarantees data integrity)
- Contains **version tolerance** (i.e. add/remove fields, change 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](https://nino.xgamedev.net/en/doc/start)
## Performance
[Microbenchmark](https://nino.xgamedev.net/en/perf/micro)