Caution
This project is still under active development, please DO NOT use it in production.
Welcome to the Zink Language! Bounty issues are now available, join the development of Zink by reading the book.
//! ERC20 Example (WIP)
#[zink::contract]
pub struct ERC20;
#[zink::calls]
impl ERC20 {
/// VMs that zink supports
pub fn support() -> [zink::String; 4] {
["EVM", "WASM", "RISC-V", "...OTHER_VMS"]
}
}
#[zink::interface]
impl ERC20 for ERC20 {
fn name() -> zink::String {
"Zink Language".to_string()
}
}
-
Safe:
rustc
monitors your code! -
Efficient: Efficient EVM bytecode from
rustc
,wasm-opt
, andzinkc
. -
Modular: Upload and download your contract components via
crates.io
. -
Rusty: All of the rust tools are available for your contracts!
Run cargo install zinkup
to install the toolchain!
Command | Description |
---|---|
cargo cc |
Clippy all packages |
cargo tt |
Run all tests |
cargo be |
Build all examples |
cargo te |
Run tests for examples |
We're using cargo-nextest
for testing, the commands above are described in .cargo/config.toml.
GPL-3.0-only