#smart-contracts #write #serialization #blockchain #concordium #deserialize #host

no-std concordium-contracts-common

Common functionality used by smart contracts and the host environment on the Concordium blockchain

18 stable releases (9 major)

9.2.0 Sep 9, 2024
9.1.0 Mar 25, 2024
9.0.0 Jan 22, 2024
8.1.1 Nov 2, 2023
0.1.0 Nov 30, 2020

#5 in #concordium

Download history 80/week @ 2024-07-08 772/week @ 2024-07-15 427/week @ 2024-07-22 260/week @ 2024-07-29 435/week @ 2024-08-05 211/week @ 2024-08-12 96/week @ 2024-08-19 162/week @ 2024-08-26 194/week @ 2024-09-02 448/week @ 2024-09-09 273/week @ 2024-09-16 252/week @ 2024-09-23 204/week @ 2024-09-30 79/week @ 2024-10-07 173/week @ 2024-10-14 41/week @ 2024-10-21

512 downloads per month
Used in 9 crates (6 directly)

MPL-2.0 license

385KB
8K SLoC

Concordium Contracts Common library

Contributor Covenant

This library provides the core API that can be used to write smart contracts for the Concordium blockchain in the Rust programming language. It aims to provide safe wrappers around the core primitives exposed by the chain and accessible to smart contracts.

The functionality in this library is re-exported via the concordium-std and the concordium-rust-sdk crate.

  • The concordium-std crate is intended as the entry-point for development of smart contracts in Rust. It adds a number of helper macros and traits on top of the basic functionality available here.

  • The concordium-rust-sdk crate is for off-chain development and interaction with smart contracts.

Features

  • std (enabled by default): Enables functionality that depends on the standard library.
  • derive-serde: Enable serialization and deserialization via serde. Enables std as well.
  • fuzz: Enable fuzzing via arbitrary. Enables derive-serde as well.
  • smart-contract: Enable functionality for smart contract development with concordium-std.

MSRV

The minimum supported rust version is specified in Cargo.toml manifest.

Dependencies

~1.2–2.7MB
~50K SLoC