VaultGuard is a decentralized bug bounty platform featuring:
- Protocol-friendly: Custom payout tiers and judge selection
- Researcher-friendly: Transparent, automatic payouts (2.5% fee)
- Judge-based verification: Multisig voting system
Before you begin, ensure you have:
- Node.js (v20 or higher)
- pnpm (recommended) or npm
- MetaMask or another Web3 wallet
- Basic understanding of Web3/Ethereum
git clone https://github.com/Gbangbolaoluwagbemiga/GuidlVault.git
cd GuidlVaultFor the entire project:
npm installFor frontend only:
cd frontend
pnpm install
# or
npm installCreate .env.local in the frontend directory:
NEXT_PUBLIC_WALLET_CONNECT_PROJECT_ID=your_project_id_hereGet your project ID from WalletConnect Cloud
# From the frontend directory
pnpm dev
# or
npm run devThe app will be available at http://localhost:3000
- Contract Address:
0x7C1486c50A729DDbf5a812C490a075053522EE43 - Explorer: https://celoscan.io/address/0x7C1486c50A729DDbf5a812C490a075053522EE43
- RPC URL: https://forno.celo.org
- Contract Address:
0x9B1A83cE71a3AC986e5646E500b9257260Bd4D4b - Explorer: https://basescan.org/address/0x9B1A83cE71a3AC986e5646E500b9257260Bd4D4b
- RPC URL: https://mainnet.base.org
- Connect Wallet (top right)
- Navigate to Create Vault
- Fill in the form:
- Initial deposit (CELO)
- Add judge addresses
- Set required approvals
- Configure payout percentages
- Submit transaction
- Wait for confirmation
- Your vault is now live!
- Connect Wallet
- Browse Vaults to find active bounties
- Navigate to Submit
- Select a vault
- Enter IPFS hash of your report
- Select severity level
- Submit transaction
- Track your submission in the Dashboard
- Claim payout once approved
- Connect Wallet
- Navigate to Judge Portal
- Review pending submissions
- Read vulnerability reports (via IPFS hash)
- Vote to Approve or Reject
- Transaction confirms your vote
GuidlVault/
โโโ contracts/ # Solidity smart contracts
โ โโโ VaultGuard.sol # Main contract
โโโ frontend/ # Next.js frontend
โ โโโ app/ # Pages (Next.js 15 App Router)
โ โโโ components/ # Reusable components
โ โโโ hooks/ # Custom React hooks
โ โโโ lib/ # Utilities and config
โ โโโ public/ # Static assets
โโโ scripts/ # Deployment scripts
โโโ test/ # Contract tests
โโโ hardhat.config.js # Hardhat configuration
# Development server
pnpm dev
# Production build
pnpm build
# Start production server
pnpm start
# Lint code
pnpm lint# Compile contracts
npm run compile
# Run tests
npm run test
# Deploy to Celo Mainnet
npm run deploy:celo:mainnet
# Deploy to Celo Alfajores (Testnet)
npm run deploy:celo:alfajores- Glassmorphism design
- Dark mode support
- Smooth animations
- Responsive layout
- Type-safe contract interactions
- Form validation
- Error boundaries
- Transaction confirmations
- Code splitting
- Optimized bundle size
- Skeleton loading screens
- Efficient re-renders
- Framework: Next.js 15
- UI: React 19, TailwindCSS
- Web3: Wagmi, Viem, Ethers.js
- Animations: Framer Motion
- Components: Radix UI, shadcn/ui
- Language: Solidity
- Framework: Hardhat
- Testing: Chai, Hardhat Network Helpers
Edit frontend/lib/contract.ts:
export const VAULT_GUARD_ADDRESS = "0xYourNewAddress";Edit frontend/app/globals.css:
:root {
--primary: 222.2 47.4% 11.2%;
--secondary: 210 40% 96.1%;
/* ... other colors */
}Edit frontend/lib/wagmi.tsx:
const config = createAppKit({
// ... existing config
networks: [celo, base, yourCustomNetwork],
// ...
});- Ensure MetaMask is installed
- Check you're on the correct network (Celo or Base)
- Try disconnecting and reconnecting
- Check you have enough CELO/ETH for gas
- Verify contract addresses are correct
- Check network connection
- Delete
node_modulesand reinstall - Clear Next.js cache:
rm -rf .next - Verify Node.js version (v20+)
- GitHub: https://github.com/Gbangbolaoluwagbemiga/GuidlVault
- Celo Contract: https://celoscan.io/address/0x7C1486c50A729DDbf5a812C490a075053522EE43
- Base Contract: https://basescan.org/address/0x9B1A83cE71a3AC986e5646E500b9257260Bd4D4b
We welcome contributions! Please:
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
MIT License - see LICENSE file
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Happy Hacking! ๐
Built with โค๏ธ for the Web3 security ecosystem