#client-config #genesis #blockchain #typed #unc #validation #interface

unc-chain-configs

This crate provides typed interfaces to the UNC Genesis and Chain Configs

12 releases (5 breaking)

0.12.2 May 30, 2024
0.10.2 May 15, 2024
0.7.3 Apr 12, 2024
0.7.0 Mar 29, 2024
0.1.0 Mar 6, 2024

#16 in #genesis


Used in 11 crates (6 directly)

GPL-2.0-or-later

1MB
22K SLoC

Chain configs crate

This crate provides typed interfaces to the UNC Genesis and Client Configs, together with the functions to validate their correctness.

Genesis config

Genesis config is the one that 'defines' the chain. It was set at the beginning and generally is not mutable.

Client config

Client config is the part of the config that client can configure on their own - it controls things like: how many peers it should connect to before syncing, which shards to track etc.

Protocol config

This is the type that is spanning over GenesisConfig and RuntimeConfig. People should not use it directly, but use the ProtocolConfigView class instead.

Dependencies

~37–51MB
~800K SLoC