IntersectMBO/cardano-base

Code used throughout the Cardano eco-system

105

stars

1,362

commits

Haskell

primary language

Sep 8, 2026

updated

base.cardano.intersectmbo.org/Browse cluster: Cardano blockchain & Ouroboros consensus

README

cardano-base

A collection of miscellaneous packages used by Cardano that cover:

  • cryptography
  • serialization
  • slotting

Each sub-project has its own README.

Haddocks for all packages from the master branch can be found at base.cardano.intersectmbo.org

All releases for packages found in this repository are recorded in the Cardano Haskell package repository

Building

With nix it is as easy as:

$ nix develop
...
$ cabal build all

Without nix

IMPORTANT: This project requires custom versions of cryptographic libraries with VRF support.

See INSTALL.md for detailed installation instructions including:

  • Pre-built binaries for macOS, Linux, and Windows
  • Building from source
  • Environment setup
  • Troubleshooting

Quick overview of required dependencies:

  • libsodium-vrf - Custom fork with VRF batch verification (source)
  • libsecp256k1 - With Schnorr signature support
  • libblst - BLS12-381 implementation

Pre-built binaries available at: https://github.com/input-output-hk/iohk-nix/releases/latest

GHC

Default version of GHC used in nix is 9.6.7. The project is tested with GHC versions 9.6.7, 9.8.4, 9.10.2, and 9.12.2.

Testing

This is a command to run test suites for all packages:

$ cabal test all

The test suites use hspec, which allows for running specific tests. This is done by passing the --match flag to the test program, followed by a pattern. You can alternatively use the HSPEC_MATCH environment variable with a pattern. For example, the cardano-crypto-class tests can be run with:

$ cabal test cardano-crypto-class --test-option=--match='blake2b_256'

or

$ HSPEC_MATCH='blake2b_256' cabal test cardano-crypto-class

Contributors

(top 30 of 69)

lehins

356 commits

erikd

150 commits

newhoggy

83 commits

dcoutts

82 commits

IntersectMBO/cardano-base

Code used throughout the Cardano eco-system

105

stars

1,362

commits

Haskell

primary language

Sep 8, 2026

updated

base.cardano.intersectmbo.org/Browse cluster: Cardano blockchain & Ouroboros consensus

README

cardano-base

A collection of miscellaneous packages used by Cardano that cover:

  • cryptography
  • serialization
  • slotting

Each sub-project has its own README.

Haddocks for all packages from the master branch can be found at base.cardano.intersectmbo.org

All releases for packages found in this repository are recorded in the Cardano Haskell package repository

Building

With nix it is as easy as:

$ nix develop
...
$ cabal build all

Without nix

IMPORTANT: This project requires custom versions of cryptographic libraries with VRF support.

See INSTALL.md for detailed installation instructions including:

  • Pre-built binaries for macOS, Linux, and Windows
  • Building from source
  • Environment setup
  • Troubleshooting

Quick overview of required dependencies:

  • libsodium-vrf - Custom fork with VRF batch verification (source)
  • libsecp256k1 - With Schnorr signature support
  • libblst - BLS12-381 implementation

Pre-built binaries available at: https://github.com/input-output-hk/iohk-nix/releases/latest

GHC

Default version of GHC used in nix is 9.6.7. The project is tested with GHC versions 9.6.7, 9.8.4, 9.10.2, and 9.12.2.

Testing

This is a command to run test suites for all packages:

$ cabal test all

The test suites use hspec, which allows for running specific tests. This is done by passing the --match flag to the test program, followed by a pattern. You can alternatively use the HSPEC_MATCH environment variable with a pattern. For example, the cardano-crypto-class tests can be run with:

$ cabal test cardano-crypto-class --test-option=--match='blake2b_256'

or

$ HSPEC_MATCH='blake2b_256' cabal test cardano-crypto-class

Contributors

(top 30 of 69)

lehins

356 commits

erikd

150 commits

newhoggy

83 commits

dcoutts

82 commits

Languages

Haskell

56.2%

C

41.2%

Shell

1.3%