Where Prediction Markets Meet Crowdfunding Bet on project milestones. Winners fund the future. Everyone wins.
PulsePool is a decentralized platform that revolutionizes project funding by combining prediction markets with crowdfunding. Users bet on whether projects will achieve their milestones - losing bets automatically fund the projects, while winners earn BNB rewards and token allocation rights:
🎲 Prediction Markets - Bet on whether projects will hit their milestones
💰 Crowdfunding - Losing bets automatically fund winning projects
🏆 Reputation System - Top predictors earn rewards & token allocation rights
⚡ Zero Waste - Every BNB staked either rewards winners or funds projects
Traditional crowdfunding lacks market validation, while prediction markets don't create real-world impact. We merge both: the wisdom of the crowd validates AND funds breakthrough projects.
Projects Submit - Entrepreneurs set milestones & funding goals
Community Predicts - Users bet BNB on milestone achievement
Smart Contracts Decide - Oracles verify milestone completion
Winners Fund - Losing bets fund projects; winners get BNB + token rights
Earn BNB rewards from accurate predictions
Gain early token allocation rights in funded projects
Build on-chain reputation with NFT badges
Access exclusive prediction markets
Get funding validated by market sentiment
No upfront costs - only pay if you succeed
Built-in community of engaged supporters
Milestone-based funding reduces risk
ProjectRegistry.sol - Project & milestone management
PredictionMarket.sol - Binary outcome prediction markets
ReputationNFT.sol - On-chain reputation tracking
Upgradeable - UUPS proxy pattern for future improvements
Solidity
Hardhat (development & testing)
OpenZeppelin (security & upgradeability)
Chainlink (oracles for milestone verification)
React 18 + TypeScript
Vite (blazing fast dev server)
Tailwind CSS (modern styling)
Wagmi + Viem (Web3 integration)
RainbowKit (wallet connection)
Testnet: BSC Testnet
Node.js 18+ (LTS)
npm or yarn
MetaMask wallet
BNB testnet
git clone https://github.com/Ted1166/oraculum.git
cd oraculumcd contracts
# Install dependencies
npm install
# Create .env file
cp .env.example .env
# Add your private key & API keys to .env
# NEVER commit .env to git!
# Compile contracts
npx hardhat compile
# Run tests
npx hardhat test
# Deploy to testnet
npm run deploy:testnet
# Deploy to mainnet (when ready)
npm run deploy:mainnetcd contracts
# Run all tests
npx hardhat test
# Run with gas reporting
REPORT_GAS=true npx hardhat test
# Run with coverage
npx hardhat coverage
# Test specific file
npx hardhat test test/Oraculum.test.tscd client
npm run testcd contracts
# Deploy to BSC Testnet
npm run deploy:testnet
# Verify contracts on BscScan
npx hardhat verify --network bscTestnet <CONTRACT_ADDRESS>cd client
# Build production bundle
npm run build
# Deploy to Vercel (recommended)
vercel deploy
# Or deploy to Netlify, AWS, etc.