80 releases (30 breaking)

new 0.31.0 Nov 4, 2024
0.30.1 Aug 25, 2024
0.29.0 Jul 16, 2024
0.24.0 Mar 9, 2024
0.3.4 Dec 19, 2021

#310 in Magic Beans

Download history 225/week @ 2024-07-17 184/week @ 2024-07-24 139/week @ 2024-07-31 68/week @ 2024-08-07 38/week @ 2024-08-14 621/week @ 2024-08-21 227/week @ 2024-08-28 342/week @ 2024-09-04 179/week @ 2024-09-11 173/week @ 2024-09-18 205/week @ 2024-09-25 348/week @ 2024-10-02 58/week @ 2024-10-09 53/week @ 2024-10-16 168/week @ 2024-10-23 137/week @ 2024-10-30

430 downloads per month
Used in 4 crates (3 directly)

Apache-2.0

1MB
21K SLoC

Pallas Logo

Rust-native building blocks for the Cardano blockchain ecosystem

GitHub Crates.io GitHub Workflow Status

Introduction

Pallas is an expanding collection of modules that re-implements common Ouroboros / Cardano logic in native Rust. This crate doesn't provide any particular application, it is meant to be used as a base layer to facilitate the development of higher-level use-cases, such as explorers, wallets, etc (who knows, maybe even a full node in a far away future).

Unboxing

The repository is organized as a Cargo workspace. Each Pallas "building block" lives in its own crate. The root pallas crate serves as an all-in-one dependency that re-exports all of the other modules in an hierarchically organized fashion, using Cargo features to tailor the setup for each use-case.

Core

Crates Description
pallas-codec Shared CBOR encoding / decoding using minicbor lib
pallas-crypto Shared Cryptographic primitives
pallas-math Shared mathematics functions

Network

Crates Description
pallas-network Network stack providing multiplexer and mini-protocol implementations

Ledger

Crates Description
pallas-primitives Ledger primitives and cbor codec for the different Cardano eras
pallas-traverse Utilities to traverse over multi-era block data
pallas-addresses Encode / decode Cardano addresses of any type

Wallet

Crates Description
pallas-wallet Wallet utilities for secure key management
pallas-txbuilder Ergonomic transaction builder

Interop

Crates Description
pallas-hardano Interoperability with implementation-specific artifacts of the Haskell Cardano node
pallas-utxorpc Interoperability with the UTxO RPC specification

Etymology

Pallas: (Greek mythology) goddess of wisdom and useful arts and prudent warfare;

Dependencies

~12–22MB
~341K SLoC