well-typed/cborg

Binary serialisation in the CBOR format

207

stars

588

commits

Haskell

primary language

May 13, 2026

updated

hackage.haskell.org/package/cborg
haskell

README

Fast binary serialisation and CBOR implementation for Haskell

Haskell CI Hackage cborg version Hackage serialise version BSD3 Haskell

This repo contains two libraries (plus associated tools):

The serialise library is for serialising Haskell values and deserialising them later.

The cborg library provides a fast, standards-compliant implementation of the 'Concise Binary Object Representation' (specified in RFC 7049) for Haskell.

The serialise library uses the CBOR format, via the cborg library, which gives it the following benefits:

  • fast serialisation and deserialisation
  • compact binary format
  • stable format across platforms (32/64bit, big/little endian)
  • support for backwards compatible deserialisation with migrations
  • the ability to inspect binary values with generic tools, e.g. for debugging or recovery, including generic conversion into JSON text
  • potential to read the serialised format from other languages
  • incremental or streaming (de)serialisation
  • internal message framing (for use in network application)
  • suitable to use with untrusted input (resistance to asymmetric resource consumption attacks)

Installation

They are just a cabal install away on Hackage:

$ cabal install cborg serialise

There are also a few related packages that you may be interested in:

  • cborg-json implements the bijection between JSON and CBOR specified in the RFC.
  • cbor-tool is a handy command-line utility for working with CBOR data.

Join in

Be sure to read the contributing guidelines. File bugs in the GitHub issue tracker.

Master git repository:

  • git clone https://github.com/well-typed/cborg.git

The tests for the cborg package are currently included in the serialise package.

$ cabal test serialise

Authors

See AUTHORS.txt.

License

BSD3. See LICENSE.txt for the exact terms of copyright and redistribution.

Contributors

(top 30 of 56)

bgamari

182 commits

dcoutts

146 commits

thoughtpolice

34 commits

phadej

32 commits

well-typed/cborg

Binary serialisation in the CBOR format

207

stars

588

commits

Haskell

primary language

May 13, 2026

updated

hackage.haskell.org/package/cborg
haskell

README

Fast binary serialisation and CBOR implementation for Haskell

Haskell CI Hackage cborg version Hackage serialise version BSD3 Haskell

This repo contains two libraries (plus associated tools):

The serialise library is for serialising Haskell values and deserialising them later.

The cborg library provides a fast, standards-compliant implementation of the 'Concise Binary Object Representation' (specified in RFC 7049) for Haskell.

The serialise library uses the CBOR format, via the cborg library, which gives it the following benefits:

  • fast serialisation and deserialisation
  • compact binary format
  • stable format across platforms (32/64bit, big/little endian)
  • support for backwards compatible deserialisation with migrations
  • the ability to inspect binary values with generic tools, e.g. for debugging or recovery, including generic conversion into JSON text
  • potential to read the serialised format from other languages
  • incremental or streaming (de)serialisation
  • internal message framing (for use in network application)
  • suitable to use with untrusted input (resistance to asymmetric resource consumption attacks)

Installation

They are just a cabal install away on Hackage:

$ cabal install cborg serialise

There are also a few related packages that you may be interested in:

  • cborg-json implements the bijection between JSON and CBOR specified in the RFC.
  • cbor-tool is a handy command-line utility for working with CBOR data.

Join in

Be sure to read the contributing guidelines. File bugs in the GitHub issue tracker.

Master git repository:

  • git clone https://github.com/well-typed/cborg.git

The tests for the cborg package are currently included in the serialise package.

$ cabal test serialise

Authors

See AUTHORS.txt.

License

BSD3. See LICENSE.txt for the exact terms of copyright and redistribution.

Contributors

(top 30 of 56)

bgamari

182 commits

dcoutts

146 commits

thoughtpolice

34 commits

phadej

32 commits

Languages

Haskell

99.9%