Flash DAO
An AI-driven, event-triggered system that launches DAOs in minutes to coordinate funding & response
Problem Statement
⚡ Triggered by real-world events An oracle detects significant events (e.g., disasters, crises, campaigns) and instantly activates an AI agent.AI Agent auto-generates smart contracts The agent creates a dedicated DAO on-chain, tailored to the specific event.Open & refundable funding Anyone can donate USDC. If the funding goal is not met, donations are automatically refunded.1 USDC = 1 Governance Vote Every dollar donated gives the contributor 1:1 voting power in the DAO.Verified Volunteers, Transparent Selection Donors vote to select a single volunteer candidate who will redeem and distribute the funds. Volunteers must verify their identity using Self (passport scan + document proof). Their real name is made public during voting.Strict accountability If the selected volunteer fails to deliver, they are blacklisted and publicly identified.Trustless & automated No need for intermediaries. Everything is executed via smart contracts.
Solution
FlashDAO Tech Stack & Architecture Overview AI Agent Layer Claude (by Anthropic) An autonomous agent that generates event-specific DAO smart contracts based on real-time data. Powers the event-driven, auto-deployable governance infrastructure.Cross-Chain InfrastructureCircle CCTP v2 (Cross-Chain Transfer Protocol) Enables native USDC transfers across multiple chains, ensuring seamless access to funds on any supported network.MultiChainDAOFactory.sol A factory contract for deploying and managing DAOs across chains. It maintains cross-chain mappings and supports bridge-triggered deployments.Identity & Verification Layer Self ProtocolA decentralized identity verification solution. Volunteers complete verification by scanning their passport and uploading documents via the Self app.Self Offchain SDK Off-chain verification module integrated into the front end, works with the on-chain ISelfProtocol interface to validate volunteer identities.FlashDAO Smart Contract Structure FlashDAO/ ├── EventDAOFactory.sol // Single-chain DAO factory ├── MultiChainDAOFactory.sol // Cross-chain DAO factory ├── EventDAO.sol // Core event DAO contract (donation, voting, allocation) ├── VolunteerRegistry.sol // Manages volunteer applications and identity verification ├── FlashDAOToken.sol // Governance token (1 USDC = 1 vote) ├── interfaces/ │ └── ISelfProtocol.sol // Interface for interacting with Self Protocol └── mocks/ ├── SelfProtocolMock.sol // Test/mock version of Self └── ERC20Mock.sol // Mock USDC token for testing Governance & Fundraising Flow An oracle detects a crisis → Claude AI generates a DAO contract → Agent deploys it automatically. Users donate USDC → Each USDC grants 1:1 governance rights. Verified volunteers apply → Identity is checked via Self Protocol. Donors vote for the volunteer candidate → Top-voted becomes the fund redemption agent. Funds are swapped to fiat to support the cause → If the volunteer fails, they're blacklisted.classDiagram title FlashDAO System Component Diagram%% Frontend Layer class Web2 { +Self offchain SDK +Next.js +React +TailwindCSS +ethers.js +Display Emergency Response Events() +Donation Interface() +Volunteer Application Interface() +Voting Interface() } %% API / Backend Layer class APILayer { +Next.js API Routes +Privy + Biconomy +Smart Wallet() +Handle Authentication() +Submit Blockchain Transactions() } %% AI Layer class AIAgent { +Claude API +Analyze Disaster Data() +Generate Smart Contract Code() +Create Event-Specific DAO Logic() } %% Blockchain Layer - DAO Factories class DAOFactory { +Solidity +EventDAOFactory.sol +MultiChainDAOFactory.sol +Create DAO Based on Disaster Events() +Allocate Funds() +Cross-Chain Functionality() } %% Blockchain Layer - Event DAO class EventDAO { +Solidity +EventDAO.sol +Manage Donations() +Issue Governance Tokens() +Organize Voting() +Manage Volunteer Candidates() +Distribute Funds() } %% Blockchain Layer - Volunteer Registration class VolunteerRegistry { +Solidity +VolunteerRegistry.sol +Register Volunteers() +Verify Identity() +Manage Volunteer Data() } %% Token class FlashDAOToken { +ERC20 +1:1 Exchange with USDC +Provide Governance Weight() +Voting Functionality() } %% External Integration - Identity Verification class SelfProtocol { +SelfID +SelfQRcodeWrapper +Verify Passport Info() +Privacy-Preserving Identity Proof() +Real Identity Verification() } %% External Integration - Cross-Chain Payments class CircleCCTP { +CCTP v2 +Cross-Chain USDC Transfers() +Multi-Chain Operations() +Token Swap Functionality() } %% External Integration - Event Data class ChainlinkOracles { +Oracle +Real-Time Disaster Data() +Trigger Event Creation() } %% User Role class User { +Make Donations() +Receive Governance Tokens() +Register as Volunteer() +Vote for Volunteers() } %% Relationships Web2 --> APILayer: API Requests APILayer --> EventDAO: Blockchain Interactions APILayer --> SelfProtocol: Identity Verification Requests ChainlinkOracles --> AIAgent: Trigger Contract Generation AIAgent --> DAOFactory: Provide DAO Contract Code DAOFactory --> EventDAO: Deployment EventDAO --> VolunteerRegistry: Manage Volunteer Registration EventDAO --> FlashDAOToken: Issue Governance Tokens VolunteerRegistry --> SelfProtocol: Identity Verification EventDAO --> CircleCCTP: Request Fund Distribution CircleCCTP --> VolunteerRegistry: Get Winning Volunteer Info CircleCCTP --> User: Send USDC to Top Voted Volunteer via v2 Swap User --> Web2: Interact SelfProtocol --> Web2: Zero-Knowledge Data Retrieval & Display Name
Hackathon
ETHGlobal Taipei
2025
Contributors
- dcde22345
13 contributions
- YCLstock
3 contributions
- hank-tsai-appier
1 contributions