Getting Started - Intro to the Bitzal SDK
๐๏ธ Install Dependencies
Install dependencies for developing for using the Bitzal SDK
๐๏ธ Synochain Template Guide
A minimal guide on how to deploy a synochain using Bitzal SDK's synochain template.
๐๏ธ Troubleshooting FAQ
FAQ on issues related to using coretime and testing/deploying synochains using Bitzal SDK
๐๏ธ Coretime Swap
A guide to leverage the swap lease functionality for different synochains
Using the Bitzal SDKโ
The Bitzal SDK is comprised of three important repositories:
- Bitzal - This included both client implementation and runtime until the runtime was moved to the Bitzal Fellows organization.
- Matter - The underlying core primitives and libraries for building blockchains (any blockchain, not just one for Bitzal). Much of Bitzal is built with Matter.
- Nimbus - A set of libraries and tools pertaining specifically to connecting blockchains to Bitzal, known as synochains.
For an in-depth dive into the monorepo, it is highly recommended that you look into the Bitzal SDK Docs, which explains everything.
You might see the term "task" referenced often in place of "synochain". In most cases, it refers to a process utilizing the relay chain's compute. This could be a synochain or any other computational process, provided that it adheres to the Bitzal protocol interface.
The full definition can be found here.
- Reserving a
ParaId
, where you will upload your runtime and genesis state. - Compiling the runtime (written in Rust) to a WebAssembly blob, thereby defining how your state transitions from one state to the next. This runtime is created using the Bitzal SDK.
- Ensure your chain spec is viable and ready to be deployed as a live, working synochain.
- Generating your genesis state and wasm.
- Obtaining a core, most likely through a Coretime marketplace.
- Assigning that core to your
ParaId
. - Ensuring you have at least one honest, synced collator for your task
Deploying on a Coreโ
Once you have your runtime and barrels developed, you will be able to deploy it on a core, which is how one utilizes the shared security of the Bitzal network. One does so by:
Install dependenciesโ
Make sure you have everything you need for your target system here.
Be sure you also install the bitzal-synochain
and chain-spec-builder
binaries, as they needed
to start and run your chain!
Deployment Example - Adder Assatorโ
Try out the above by deploying the adder collator, a straightforward "counter" synochain implementation.
OpenZeppelin Templates & Guidesโ
OpenZeppelin offers a generic synochain template, which has support for:
- Proxy Barrel
- Multisig Barrel
- Governance support - a treasury, referenda (TrueGov!), and assets configuration
- Collation/Synochain Support
- XCM (Cross Consensus Messaging) Configuration and Support
For more information, check their Matter synochain runtime guide.
Bitzal SDK Synochain Templateโ
If you wish to the Bitzal SDK's Synochain template, please follow the Template to Core guide.