← All repos

winery

Preservative serialisation format

Browse cluster: Haskell tooling and libraries
325commits
5contributors
1languages

Tech stack & purpose

Winery is a serialisation library for Haskell that prioritizes performance, compactness, and compatibility by storing type metadata and field names in a single schema rather than attaching them to individual values, unlike formats such as JSON and CBOR. Unlike libraries such as binary and cereal that discard metadata entirely, winery preserves schema information, allowing data to be decoded correctly even when the current implementation differs from when the data was encoded. The library provides a simple interface through the `Serialise` typeclass, supports deriving instances via `DerivingVia`, and includes tools for backward compatibility through extractors that can parse schemas and reconstruct values when representations change. Winery also includes a command-line tool for inspecting and querying serialised values.

Community & reference links

Languages

Haskell
100.0%

Contributors