Harmonia is a next-generation DAO board management platform built on Stellar, designed for decentralized governance, voting, treasury management, and AI-assisted decision-making. The platform integrates passkey security, AI-driven automation, and Rust-powered Soroban smart contracts to ensure efficient and transparent DAO operations.
- Decentralized Governance: On-chain voting and proposal system
- AI Automation: Smart insights and automated DAO workflows
- Passkey Authentication: Secure, passwordless authentication
- Rust & Soroban Smart Contracts: Scalable DAO processing on Stellar
- Treasury Management: Multi-signature wallets for secure fund management
- Next.js 14 with App Router & Pages Router
- Supabase SSR for authentication and data storage
- Tailwind CSS & shadcn/ui for modern UI components
- Optimized Build using Bun for fast dependency management
- Frontend: Next.js 14 + (App Router & Pages Router)
- Backend: Supabase (Database & Auth)
- Styling: Tailwind CSS & shadcn/ui
- Package Management: Bun
- Smart Contracts: Rust & Soroban (Stellar integration)
- Security: Passkeys, protected routes, input validation, rate limiting
Harmonia/
├── .husky/ # Pre-commit hooks
├── apps/
│ ├── admin/ # Admin panel (TBD)
│ ├── contracts/ # Smart contracts
│ ├── webapp/ # Main Next.js application
│ │ ├── .next/ # Build artifacts
│ │ ├── app/ # Next.js App Router pages
│ │ ├── hooks/ # React hooks
│ │ ├── lib/ # Utility functions and helpers
│ │ ├── public/ # Static assets
│ │ ├── .env # Environment variables
│ │ ├── .env.sample # Example environment file
│ │ ├── components.json # shadcn/ui components
│ │ ├── eslint.config.mjs # Linter configuration
│ │ ├── next.config.ts # Next.js configuration
│ │ ├── package.json # Dependencies
│ │ ├── tailwind.config.ts # Tailwind CSS configuration
│ │ ├── tsconfig.json # TypeScript configuration
│ │ └── README.md # Webapp documentation
├── docs/ # Documentation
├── node_modules/ # Dependencies
├── packages/ # Shared Utilities
│ └── lib # Shared logic, clients, hooks, and utilities across apps
├── services/ # Backend services
│ ├── supabase/ # API services
│ └── README.md # Services documentation
├── .gitignore # Git ignored files
├── bun.lock # Bun package lock file
├── commitlint.config.js # Commit message rules
├── README.md # Project documentation
└── package.json # Root package dependencies
Ensure you have the following installed:
-
Clone the repository:
git clone https://github.com/your-username/harmonia-dapp.git cd harmonia-dapp
-
Install dependencies:
bun install
-
Start the development server:
bun dev
-
Rename
.env.sample
to.env.local
and update the following:NEXT_PUBLIC_SUPABASE_URL=[INSERT SUPABASE PROJECT URL] NEXT_PUBLIC_SUPABASE_ANON_KEY=[INSERT SUPABASE PROJECT API ANON KEY]
You can find these values in Supabase API settings.
- Uses Next.js 14 with the App Router
- Modular structure with reusable components
- Optimized with shadcn/ui and Tailwind CSS
- Built with Supabase for database and authentication
- API services managed under
services/
- On-chain voting & proposal management
- Real-time governance tracking
- Proposal generation & optimization
- AI-assisted decision-making
- Passkeys for secure, passwordless access
- Multi-signature treasury management
- Passkey Authentication: Secure, phishing-resistant login
- Protected Routes: Prevents unauthorized access
- Input Validation: Reduces security risks
- Rate Limiting: Protects against abuse
This project is open-source and available under the MIT License.
We welcome contributions! Feel free to submit pull requests or open issues.
Made with ❤️ by the Harmonia Team