Skip to content

Latest commit

Β 

History

History
182 lines (133 loc) Β· 5.17 KB

File metadata and controls

182 lines (133 loc) Β· 5.17 KB

StellarGuard

A decentralized multi-signature treasury and DAO governance platform built on Stellar Soroban.

  ____  _       _ _            ____                     _
 / ___|| |_ ___| | | __ _ _ __/ ___|_   _  __ _ _ __ __| |
 \___ \| __/ _ \ | |/ _` | '__| |  _| | | |/ _` | '__/ _` |
  ___) | ||  __/ | | (_| | |  | |_| | |_| | (_| | | | (_| |
 |____/ \__\___|_|_|\__,_|_|   \____|\__,_|\__,_|_|  \__,_|

Trustless treasury management for teams, DAOs, and community organizations.


πŸ’‘ The Idea

StellarGuard is a sovereign, on-chain treasury management protocol that enables:

  • Multi-Sig Fund Management: Configurable approval thresholds for withdrawals (e.g., 3-of-5 signers)
  • DAO Governance: Create and vote on proposals for fund allocation, policy changes, and membership
  • Token Vesting: Lock tokens with time-based release schedules for team allocations
  • Role-Based Access: Owner, Admin, Member, and Viewer permission tiers
  • Full Transparency: Every action is recorded on-chain with event emissions

Why This Matters

Many cooperatives, savings groups (ajo/esusu), and community organizations in emerging markets lack transparent treasury tools. StellarGuard provides trustless, on-chain fund management with Stellar's low fees and fast finality β€” no bank account required.


πŸ—οΈ Architecture

graph TD
    User((Team Member)) -->|Connect Wallet| UI[Next.js Dashboard]
    UI -->|Invoke| Treasury[Treasury Contract]
    UI -->|Invoke| Governance[Governance Contract]

    subgraph Stellar Network
        Treasury -->|Store| Funds[On-Chain Balances]
        Treasury -->|Emit| TxEvents[Transaction Events]
        Governance -->|Store| Proposals[Proposal State]
        Governance -->|Emit| VoteEvents[Vote Events]
        ACL[Access Control] -->|Guard| Treasury
        ACL -->|Guard| Governance
        Vault[Token Vault] -->|Lock| Vesting[Vesting Schedules]
    end

    subgraph Backend Services
        Indexer[Event Indexer] -->|Listen| TxEvents
        Indexer -->|Listen| VoteEvents
        Indexer -->|Store| DB[(PostgreSQL)]
    end

    subgraph API Layer
        DB -->|Serve| API[REST API]
        API -->|Analytics| UI
    end

    Auditor((Auditor)) -->|Query| API
Loading

πŸ›  Tech Stack

Layer Technology
Smart Contracts Soroban (Rust), soroban-sdk
Frontend Next.js 14, TypeScript, Tailwind CSS
Wallet Freighter Browser Extension
Backend FastAPI (Python) or NestJS (TypeScript)
Database PostgreSQL, Redis
Indexing Custom Soroban-RPC event listener
DevOps GitHub Actions, Docker Compose

πŸ“¦ Project Structure

stellar/
β”œβ”€β”€ smartcontract/           # Soroban smart contracts (Rust)
β”‚   β”œβ”€β”€ Cargo.toml           # Workspace root
β”‚   └── contracts/
β”‚       β”œβ”€β”€ treasury/        # Multi-sig treasury
β”‚       β”œβ”€β”€ governance/      # Proposal & voting
β”‚       β”œβ”€β”€ token-vault/     # Token locking & vesting
β”‚       └── access-control/  # Role-based permissions
β”œβ”€β”€ frontend/                # Next.js dashboard
β”‚   └── src/
β”‚       β”œβ”€β”€ app/             # Pages & routes
β”‚       β”œβ”€β”€ components/      # UI components
β”‚       β”œβ”€β”€ context/         # Wallet provider
β”‚       β”œβ”€β”€ hooks/           # Data fetching hooks
β”‚       └── lib/             # Soroban helpers
β”œβ”€β”€ docs/                    # Issue trackers & guides
β”œβ”€β”€ README.md
β”œβ”€β”€ CONTRIBUTING.md
β”œβ”€β”€ CODE_OF_CONDUCT.md
β”œβ”€β”€ STYLE.md
└── MAINTAINERS.md

πŸš€ Getting Started

1. Prerequisites

  • Node.js v18+
  • Rust & Cargo (for smart contracts)
  • Soroban CLI (cargo install soroban-cli)
  • Freighter Wallet browser extension

2. Installation

Clone the repository:

git clone https://github.com/YourOrg/StellarGuard.git
cd StellarGuard

Verify workspace integrity:

cargo build --all

Setup Smart Contracts:

cd smartcontract
# See docs/ISSUES-SMARTCONTRACT.md for contribution tasks

Setup Frontend:

cd frontend
npm install
npm run dev
# See docs/ISSUES-FRONTEND.md for contribution tasks

πŸ“š Documentation & Trackers

We have separated our task lists for better organization. Please refer to the specific tracker for your area of contribution:

Guides:


🀝 Contributing

We welcome contributions! Please see our CONTRIBUTING.md for details on our code of conduct and the development process.

Quick Start for Contributors:

  1. Pick an issue from docs/.
  2. Fork the repo.
  3. Create a feature branch (feat/my-feature).
  4. Submit a PR!

πŸ“„ License

This project is licensed under the MIT License β€” see the LICENSE file for details.