Codable: Serialization Protocol for Dart
This package contains the RFC and prototype implementation for a new serialization protocol for Dart.
👉 Read the RFC: RFC: New Serialization Protocol for Dart
Codebase Overview
-
Core Protocol: /lib/src/core
-
Use cases:
- Basic: /test/basic
- Collections: /test/collections
- Error Handling: /test/error_handling
- Generics: /test/generics
- Polymorphism: /test/polymorphism
-
Benchmark: /test/benchmark
-
Format Implementations:
- Standard: /lib/src/formats/standard
- JSON: /src/formats/json
- MessagePack: /src/formats/msgpack
- CSV: /src/formats/csv
-
Type Implementations:
- Person: /test/basic/model/person
- Color: /test/enum/model/color
- List & Set: /lib/src/common/iterable
- Map: /lib/src/common/map
- DateTime: /lib/src/common/datetime
- Uri: /lib/src/common/uri
-
Extended Protocol: /lib/src/extended
How to contribute?
If you would like to contribute, there are several ways to do so.
First, just read the RFC and give feedback by commenting on the issue or the forum post.
A ⭐️ is also very appreciated, and you can help by spreading the word about this proposal.
Finally, you can contribute code for the following things:
- Test Cases: Have a special case or unique problem you need to solve? Contribute a test case and we can make sure it is supported by the protocol.
- Formats: Add a new data format implementation or improve the existing ones.
Important
Before contributing, please open an issue first so others can see what is being worked, discuss ideas, and combine efforts.