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

unc-chain-configs

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

9 unstable releases (3 breaking)

new 0.7.3 Apr 12, 2024
0.7.2 Apr 9, 2024
0.7.0 Mar 29, 2024
0.6.1 Mar 21, 2024
0.1.0 Mar 6, 2024

#12 in #genesis

Download history 135/week @ 2024-03-01 262/week @ 2024-03-08 267/week @ 2024-03-15 89/week @ 2024-03-22 147/week @ 2024-03-29 341/week @ 2024-04-05

858 downloads per month
Used in 9 crates (5 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

~36–52MB
~830K SLoC