A decentralized humanitarian aid platform built on Solana, enabling transparent and efficient fundraising for NGOs and aid organizations.
Beacon Aid Relief is a full-stack Web3 application that combines the power of Solana blockchain with a modern web interface to create a transparent, efficient, and secure platform for humanitarian aid fundraising.
- Decentralized Fundraising: Create and manage fundraising campaigns on Solana blockchain
- Transparent Donations: Track all donations and fund movements on-chain
- NGO Authentication: Secure authentication system for verified NGOs and aid organizations
- Real-time Updates: Live tracking of campaign progress and donations
- Secure Withdrawals: Smart contract-based withdrawal system for campaign creators
- Solana Blockchain
- Anchor Framework
- Rust
- Next.js 15 (App Router)
- TypeScript
- TailwindCSS
- shadcn/ui Components
- Supabase (Database & Auth)
- Reown AppKit
- @solana/web3.js
- @project-serum/anchor
beacon-aid-relief/
├── app/ # Next.js web application
│ ├── src/
│ │ ├── app/ # Next.js app router pages
│ │ ├── components/ # React components
│ │ ├── services/ # Business logic & blockchain interactions
│ │ └── integrations/ # External service integrations
├── programs/ # Solana programs
│ └── beacon-aid-relief/ # Main Solana program
└── tests/ # Program tests
- Node.js 16+
- Rust and Cargo
- Solana CLI Tools
- Anchor CLI
- Git
-
Clone the repository
git clone https://github.com/BarrieLAJ/beacon-aid-relief.git cd beacon-aid-relief -
Install dependencies
# Install Solana program dependencies cd programs/beacon-aid-relief cargo build # Install web app dependencies cd ../../app yarn install
-
Set up local Solana validator
solana-test-validator
-
Build and deploy Solana program
anchor build anchor deploy
-
Start the web application
yarn dev
-
Solana Development Environment
- Install Solana CLI tools: https://docs.solana.com/cli/install-solana-cli-tools
- Install Anchor:
cargo install --git https://github.com/project-serum/anchor anchor-cli --locked - Set up a local wallet:
solana-keygen new
-
Environment Variables Create a
.env.localfile in theappdirectory:NEXT_PUBLIC_SUPABASE_URL=your_supabase_url NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key NEXT_PUBLIC_SOLANA_NETWORK=devnet -
Database Setup
- Set up a Supabase project
- Run the database migrations
- Configure RLS policies
anchor test-
Deploy Solana Program
anchor build anchor deploy --provider.cluster devnet
-
Deploy Web Application
cd app yarn build yarn start
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.