An open API service indexing awesome lists of open source software.

https://github.com/ChecksFinance/soul-moment

An attempt to provide an implementation of SBT in Cairo lang.
https://github.com/ChecksFinance/soul-moment

cairo python sbt solidity starknet

Last synced: over 1 year ago
JSON representation

An attempt to provide an implementation of SBT in Cairo lang.

Awesome Lists containing this project

README

          





Soul Moment



An attempt to provide an implementation of SBT(Soul-bound token) in Cairo lang.



Brought to you by @ChecksFinance.



mit license

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.

## Concepts

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.

### Use this module in your project

```bash
pip install git+https://github.com/ChecksFinance/soul-moment.git
```

Then

```python
from soulmoment.library import SoulMoment
```

you can find demo contracts in `./src/account` and `./src/soulmoment`

### Set up the project

#### Create a Python virtual environment

```bash
python -m venv env
source env/bin/activate
```

#### 📦 Install the requirements

```bash
pip install -r requirements.txt
```

**Notice**: this project use the latest version of OpenZeppelin contract for Cairo instead of the stable release of it.

### ⛏️ Compile

```bash
nile compile --directory src
nile compile src/soulmoment/account/SoulAccount.cairo --account_contract
```

### 🌡️ Test

```bash
# Run all tests
pytest tests
```

## 📄 License

**soul-moment** is released under the [MIT](LICENSE).