Transparent crowdfunding on Stellar Soroban...
- Contract name:
stellarGive(contracts/stellar-give) - Contract ID:
CB6HVHRQYILGNKW7RBB66BC6TDBIEWADOA2YUUV4I22RXRLA6DY6OAKT - Deployer alias:
copilot-deployer - WASM upload tx:
92a8a10978d2216de9f6e97bd2b4c522076eb1242a3d2d5c4738c4fb86a6dd2a - Deploy tx:
e3f88cee225bb5548e4640afe02c351373575469fb60dac6f5de670aa7687156 - Explorer (deploy tx):
https://stellar.expert/explorer/testnet/tx/e3f88cee225bb5548e4640afe02c351373575469fb60dac6f5de670aa7687156 - Lab contract link:
https://lab.stellar.org/r/testnet/contract/CB6HVHRQYILGNKW7RBB66BC6TDBIEWADOA2YUUV4I22RXRLA6DY6OAKT
Frontend (Next.js) -> Stellar SDK/Freighter -> Soroban RPC -> stellar-give Contract
^ |
|---------------------- event + state polling --------------|
Detailed architecture: docs/ARCHITECTURE.md
contracts/stellar-give Soroban smart contract (Rust)
frontend/ Next.js 14 web app
scripts/ Deployment and utility automation
docs/ Security, deployment, architecture, contributing docs
.github/workflows/ Contract + frontend CI pipelines
New Contributors: Please see our Detailed Setup Guide for comprehensive instructions on setting up your environment for macOS, Linux, and Windows (WSL2).
- Install dependencies and set env files
cp .env.example .env cp .env.example frontend/.env.local echo "NEXT_PUBLIC_CONTRACT_ADDRESS=CB6HVHRQYILGNKW7RBB66BC6TDBIEWADOA2YUUV4I22RXRLA6DY6OAKT" >> frontend/.env.local cd frontend && npm ci
- Run local checks
cd ../contracts/stellar-give && cargo test cd ../../frontend && npm run lint && npm run build
- Run the frontend with the deployed contract
npm run dev
Watch the 3-minute tutorial to create your first campaign.
Video covers wallet connection, campaign creation, donation flow, and transaction confirmation with captions for accessibility.
| Area | Command |
|---|---|
| Contract format | cd contracts/stellar-give && cargo fmt --check |
| Contract lint | cd contracts/stellar-give && cargo clippy -- -D warnings |
| Contract test | cd contracts/stellar-give && cargo test |
| Contract wasm build | cd contracts/stellar-give && cargo build --release --target wasm32-unknown-unknown |
| Frontend lint | cd frontend && npm run lint |
| Frontend build | cd frontend && npm run build |
| Frontend dev | cd frontend && npm run dev |
- Soroban Testnet RPC:
https://soroban-testnet.stellar.org - Friendbot:
https://friendbot.stellar.org/?addr=<PUBLIC_KEY> - Explorer base (testnet):
https://stellar.expert/explorer/testnet - Lab:
https://lab.stellar.org
- Smart contract: Rust,
soroban-sdk - Frontend: Next.js 14, React 18, TypeScript
- Blockchain: Stellar Soroban (testnet-first workflow)
- CI/CD: GitHub Actions
- Setup Guide:
docs/SETUP.md - Architecture:
docs/ARCHITECTURE.md - Contract API:
docs/CONTRACT_API.md - Security:
docs/SECURITY.md - Deployment:
docs/DEPLOYMENT.md - Contributing:
docs/CONTRIBUTING.md - Video Transcript:
docs/VIDEO_TRANSCRIPT.md - Litepaper:
docs/WHITEPAPER.md
- Coverage reporting: Tests for Rust (
cargo tarpaulin) and Frontend (vitest --coverage) are run in CI. - Codecov dashboard: Test coverage metrics are automatically uploaded to Codecov for both frontend and contract.
- WASM optimization: Contract builds are strictly validated to ensure optimized
.wasmsize remains under 64KB. - Local Soroban node: We support local-first Soroban development using
stellar/quickstart:testing. Rundocker compose upto start a standalone node (RPC on port 8000, Horizon on port 8001). - Dependabot maintenance: Weekly dependency updates are enabled for both Cargo (contracts) and NPM (frontend) dependencies.
- Multi-token donation support (#10)
- Campaign categories and search (#15, #37)
- Mobile-responsive UI (#46)
- Recurring donations (subscription model)
- DAO governance for platform upgrades
- Analytics dashboard for creators
- Mobile app (React Native)
- Cross-chain bridge for Ethereum donations
- Grant program for non-profit onboarding
Roadmap items are aspirational and may change based on community feedback and implementation feasibility.
Welcome! If you are new to the project, please start by reading our Detailed Setup Guide which will walk you through installing all necessary dependencies (Rust, Soroban CLI, Node.js) across macOS, Linux, and Windows. Once your environment is set up, check out docs/CONTRIBUTING.md for our workflow guidelines.
Mutmahinat Feyisara π» π |
Nursca π» π π¨ π€ |
This project follows the all-contributors specification. Contributions of any kind welcome as always!