Next-Generation Decentralized Crowdfunding Platform on Solana
Solado revolutionizes crowdfunding by leveraging Solana's high-performance blockchain to create a transparent, secure, and cost-effective platform for creators and backers worldwide. Built with cutting-edge web3 technologies and modern design principles.
- Campaign Creation: Launch campaigns with custom goals, deadlines, and rich descriptions
- SOL Donations: Fast, low-cost contributions using Solana wallets (< $0.01 fees)
- Real-Time Tracking: Live progress monitoring with animated progress bars
- Smart Refunds: Automatic refund system for failed campaigns
- Success Withdrawals: Secure fund release for successful campaigns
- Responsive Design: Perfect experience across all devices
- Glassmorphism UI: Modern design with backdrop blur effects and smooth animations
- BoxReveal Animations: Engaging micro-interactions throughout the platform
- Smart Filtering: Filter campaigns by status (Active, Successful, Ending Soon)
- Campaign Analytics: Detailed statistics and progress visualization
- User Profiles: Personal dashboards showing created and backed campaigns
- Balance Integration: Real-time SOL balance using Helius API
- Wallet Integration: Seamless connection with Phantom, Solflare, and other Solana wallets
- Campaign Details Modal: Full-screen campaign view with donation interface
- Social Sharing: Native sharing and clipboard functionality
- Background Processes: Non-blocking UI with loading states
- Dynamic Badges: Status indicators (Active, Expired, Successful)
- Statistics Dashboard: Platform-wide metrics and insights
- Solana: High-performance blockchain (65,000 TPS)
- Anchor Framework: Rust-based smart contract development
- Program ID:
8SsWF8CPzvbepfQqkrGfafgtEG1ZZWx6xRtJXW5vMCDH - SPL Tokens: Native SOL support with planned multi-token integration
- React 18: Modern component-based UI framework
- TypeScript: Type-safe development with enhanced DX
- Vite: Lightning-fast build tool and dev server
- Tailwind CSS: Utility-first styling framework
- Framer Motion: Smooth animations and transitions
- Solana Web3.js: Blockchain interaction library
- Wallet Adapter: Multi-wallet connection support
- MagicUI Components: Custom animation components (BoxReveal)
- Shadcn/UI: High-quality, accessible component library
- Heroicons: Beautiful SVG icon library
- Custom Glass Components: Glassmorphism design elements
- Responsive Grid Layouts: Mobile-first design approach
Solado/
├── solado/ # Anchor workspace
│ ├── programs/solado/ # Smart contract source
│ │ └── src/lib.rs # Main program logic
│ ├── tests/ # Contract tests
│ ├── target/ # Compiled artifacts
│ └── Anchor.toml # Anchor configuration
│
├── frontend/ # React frontend
│ ├── src/
│ │ ├── components/ # React components
│ │ │ ├── CampaignList.tsx # Main campaign browser
│ │ │ ├── CreateCampaign.tsx # Campaign creation form
│ │ │ ├── Dashboard.tsx # Main navigation hub
│ │ │ ├── Profile.tsx # User profile page
│ │ │ └── ui/ # Reusable UI components
│ │ ├── contexts/ # React contexts
│ │ │ ├── ProgramContext.tsx # Anchor program context
│ │ │ └── WalletContext.tsx # Wallet connection context
│ │ ├── idl/ # Generated IDL types
│ │ └── lib/ # Utility functions
│ ├── public/ # Static assets
│ └── package.json # Dependencies and scripts
│
└── README.md # Project documentation
- Node.js 18+ and npm/yarn
- Rust 1.70+
- Solana CLI 1.16+
- Anchor CLI 0.29+
- Git
git clone https://github.com/Shaurya2k06/Solado.git
cd Solado# Configure Solana CLI
solana config set --url devnet
solana-keygen new --outfile ~/.config/solana/id.json
# Install Anchor
cargo install --git https://github.com/coral-xyz/anchor anchor-cli --lockedcd solado
anchor build
anchor deploy
# Copy program ID to Anchor.toml and lib.rs
anchor keys listcd ../frontend
npm install
# Create environment file
echo "VITE_HELIUS_API_KEY=your_helius_api_key" > .envnpm run devOpen http://localhost:5173 and connect your Solana wallet!
Creates a new crowdfunding campaign
pub fn create_campaign(
ctx: Context<CreateCampaign>,
title: String, // Campaign title (max 200 chars)
description: String, // Campaign description (max 1000 chars)
goal_amount: u64, // Funding goal in lamports
deadline: i64, // Unix timestamp deadline
metadata_uri: String, // IPFS/Arweave metadata URI
) -> Result<()>Make a donation to an active campaign
pub fn donate(
ctx: Context<Donate>,
amount: u64, // Donation amount in lamports
) -> Result<()>Creator withdraws funds from successful campaign
pub fn withdraw(ctx: Context<Withdraw>) -> Result<()>Donor claims refund from failed campaign
pub fn refund(ctx: Context<Refund>) -> Result<()>pub struct Campaign {
pub creator: Pubkey, // Campaign creator's wallet
pub title: String, // Campaign title
pub description: String, // Campaign description
pub goal_amount: u64, // Funding goal in lamports
pub donated_amount: u64, // Current donations in lamports
pub deadline: i64, // Unix timestamp deadline
pub metadata_uri: String, // Metadata URI for images/videos
pub created_at: i64, // Creation timestamp
pub is_active: bool, // Campaign status
pub bump: u8, // PDA bump seed
}pub struct DonationRecord {
pub donor: Pubkey, // Donor's wallet address
pub campaign: Pubkey, // Campaign public key
pub amount: u64, // Donation amount in lamports
pub timestamp: i64, // Donation timestamp
pub bump: u8, // PDA bump seed
}- Creator-only withdrawal permissions
- Donor-only refund permissions
- Time-based deadline enforcement
- Goal-based success validation
- Campaign parameter limits and sanitization
- Positive amount validation for donations
- Future deadline requirement
- Safe arithmetic operations (overflow protection)
- Escrow-based fund management
- Rent-exempt account maintenance
- Atomic transaction guarantees
- No reentrancy vulnerabilities
- Comprehensive custom error codes
- Graceful failure handling
- Clear error messages for debugging
- Transaction rollback on failures
This project is licensed under the MIT License - see the LICENSE file for details.
- Solana Labs for the incredible blockchain infrastructure
- Coral for the Anchor framework
- Phantom Wallet for seamless wallet integration
- Shadcn/UI for beautiful, accessible components
- Vercel for deployment and hosting solutions
Developer: Shaurya Srivastava
GitHub: @Shaurya2k06
Email: [email protected]
Project: https://github.com/Shaurya2k06/Solado