21 releases
0.10.5 | May 17, 2024 |
---|---|
0.10.4 | Mar 15, 2024 |
0.10.3 | Jan 4, 2024 |
0.10.2 | Nov 3, 2023 |
0.4.4 | Nov 24, 2020 |
#5 in #capsule
1MB
4K
SLoC
Capsule
Capsule is an out-of-box development framework for creating smart contract on Nervos' CKB.
Capsule consists of:
- Capsule CLI - Scaffolding tool.
- CKB-testtool - CKB scripts testing framework.
CKB supports several programming languages for writing scripts, and the language supporting libraries are maintained in the following repositories:
- ckb-std - Rust
- ckb-c-stdlib - C
- ckb-lua - Lua
Installation
Supported Environments
- Linux
- macOS
- Windows (WSL2)
Prerequisites
The following must be installed and available to use Capsule.
- cargo and rust - Capsule uses
cargo
to generate Rust contracts and run tests. https://www.rust-lang.org/tools/install. - docker - Capsule uses
docker
container to reproducible build contracts. It's also used by cross. https://docs.docker.com/get-docker/ - cross. Capsule uses
cross
to build rust contracts. Install with
$ cargo install cross --git https://github.com/cross-rs/cross
Note: All commands must be accessible in the PATH
in order for them to be used by Capsule.
Note: The current user must have permission to manage Docker instances. How to manage Docker as a non-root user.
Install binary
Cargo install
Install the latest version
cargo install ckb-capsule
Install the develop branch
cargo install ckb-capsule --git https://github.com/nervosnetwork/capsule.git --branch develop
Usage
capsule help
Quick Start
# check environment
capsule check
# create project
capsule new my-demo
cd my-demo
capsule build
capsule test
Project Layout
capsule.toml
- Capsule manifest file.contracts
- Contracts directory.tests
- Contracts tests.build
- Contracts binaries.
Documentation
Upgrading to Capsule 0.10
Upgrade an existing project to capsule 0.10
LICENSE
Dependencies
~41–76MB
~1M SLoC