An attempt to provide an implementation of SBT(Soul-bound token) in Cairo lang.
Brought to you by @ChecksFinance.
This module is implemented on StarkNet in Cairo language. Using this module requires that you have a basic understanding of the Cairo language and python.
One of the most important concepts of SBT is non-transferable and verifiable split property rights. This basic logic is explored in a very simple way by implementing the issuance and verification of SBTs on L2's abstract account contracts.
pip install git+https://github.com/ChecksFinance/soul-moment.gitThen
from soulmoment.library import SoulMomentyou can find demo contracts in ./src/account and ./src/soulmoment
python -m venv env
source env/bin/activatepip install -r requirements.txtNotice: this project use the latest version of OpenZeppelin contract for Cairo instead of the stable release of it.
nile compile --directory src
nile compile src/soulmoment/account/SoulAccount.cairo --account_contract# Run all tests
pytest testssoul-moment is released under the MIT.