Spherre is a decentralized multisignature (multisig) treasury solution built for the StarkNet ecosystem. It enables teams, individuals, and organizations to securely manage digital assets with collective control, transparency, and robust on-chain governance.
- Multisig Treasury: Require multiple approvals for transactions, reducing single points of failure.
- Role-Based Access: Assign roles and permissions to different participants.
- On-chain Governance: Propose, approve, and execute treasury actions transparently.
- Modular & Extensible: Easily integrate with other StarkNet protocols and dApps.
- Auditable: All actions are recorded on-chain for full transparency.
- Cairo Smart Contracts: Core logic implemented in Cairo, deployed on StarkNet.
- TypeScript Scripts: Utilities for deployment, interaction, and testing.
- Automated Testing: Uses Starknet Foundry for contract testing.
- Continuous Integration: GitHub Actions for linting, testing, and formatting.
- Scarb (Cairo package manager)
- Starknet Foundry (
snforge) - Node.js (for TypeScript scripts)
-
Clone the repository:
git clone https://github.com/Spherre-Labs/spherre.git cd spherre -
Install Cairo dependencies:
curl --proto '=https' --tlsv1.2 -sSf https://docs.swmansion.com/scarb/install.sh | sh scarb --version
-
Install Starknet Foundry:
curl -L https://raw.githubusercontent.com/foundry-rs/starknet-foundry/master/scripts/install.sh | sh snforge --version -
Install Node.js dependencies:
npm install
- Cairo Contracts: Located in
src/ - TypeScript Scripts: Located in
scripts-ts/ - Deployment Artifacts:
deployments/ - TypeScript ABIs:
typescript_abis/
- Format Cairo code:
scarb fmt
- Compile contracts:
scarb build
- Run Deployment scripts:
yarn deploy
-
Run all tests:
scarb test -
Check formatting:
scarb fmt --check
-
Configure environment variables:
Copy.env.exampleto.envand fill in the required values. -
Deploy contracts:
yarn deploy
-
Clear deployments (if needed):
yarn deploy:clear
We welcome contributions! Please read our CONTRIBUTING.md for guidelines on:
- Setting up your development environment
- Making changes and following the style guide
- Running tests and formatting code
- Submitting pull requests
Please also review our Code of Conduct.
This project is licensed under the terms of the MIT License.
- Issues: GitHub Issues
- Discussions: Open a discussion or reach out to the maintainers.