12 releases
new 0.3.0 | Jan 21, 2025 |
---|---|
0.3.0-dev | Jan 18, 2025 |
0.2.0 | Jan 16, 2025 |
0.1.11 | Jan 2, 2025 |
0.1.10 | Dec 31, 2024 |
#375 in Magic Beans
965 downloads per month
430KB
1.5K
SLoC
Contains (ELF exe/lib, 1MB) src/bin/charms-spell-checker
charms
is a library, CLI tool and web API for programmable tokens and NFTs on top of Bitcoin.
Charms are bundles of tokens, NFTs and arbitrary app state, enchanting Bitcoin UTXOs, that can be used to build apps directly on Bitcoin.
For example: Charms NFTs have state, so it's easy to create a token managed by an NFT: the token's remaining unminted supply is stored in the NFT state, and you can only mint the token when updating the NFT state accordingly (in the same transaction).
Charms are created using spells — special messages added to Bitcoin transactions, manifesting creation and transformation of charms.
Get Started
Install Charms CLI:
export CARGO_TARGET_DIR=$(mktemp -d)/target
cargo install --locked charms --version=0.3.0
Create your first app (your own token on Bitcoin):
charms app new my-token
cd ./my-token
ls -l
Read this: hello world!
Documentation
Concepts and guides: charms.dev
Charms CLI:
charms --help
Inspiration
Charms are inspired by Runes — a way to create tokens on top of Bitcoin. Charms are, in a way, a generalization of Runes.
The main difference is that Charms are easily programmable (and composable).
©️2025 sigmazero
Dependencies
~56–93MB
~1.5M SLoC