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.git
Then
from soulmoment.library import SoulMoment
you can find demo contracts in ./src/account
and ./src/soulmoment
python -m venv env
source env/bin/activate
pip install -r requirements.txt
Notice: 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 tests
soul-moment is released under the MIT.