MNEEBet is a fully decentralized peer-to-peer betting platform that leverages MNEE USD-backed stablecoin as the escrow currency. Two users stake equal amounts, a human judge resolves disputes, and the winner receives the full pot instantly through atomic smart contract execution.
Traditional betting platforms suffer from:
- β Centralized custody of funds
- β Hidden fees and unfair house edges
- β Delayed payouts and account freezes
- β Price volatility in crypto bets
- β Lack of transparency
MNEEBet solves all of these problems:
- β Non-custodial escrow - funds locked in smart contract
- β Zero platform fees - 100% of pot goes to winner
- β Instant settlement - atomic payout on resolution
- β Stable value - MNEE maintains $1.00 USD peg
- β Transparent & immutable - all actions on-chain
Due to insufficient ETH for mainnet deployment, this hackathon submission currently runs on Sepolia testnet.
What This Means:
- β Full Protocol Implementation: Complete smart contract with all production features
- β Identical Codebase: Exact same contract ready for mainnet deployment
- β Mock MNEE Token: Created on Sepolia to demonstrate real MNEE integration
- β Production Architecture: Built for Ethereum mainnet from day one
Mainnet Deployment Requirements:
- Real MNEE Token:
0x8ccedbAe4916b79da7F3F612EfB2EB93A2bFD6cF(Ethereum Mainnet) - Estimated Gas:
0.03-0.05 ETH ($80-130 USD) - Status: Awaiting deployment funds
Current Deployment:
Network: Sepolia Testnet
MNEEBet Contract: 0x3480874a63D459046993915b52e612ee69947a81
Mock MNEE Token: 0xb8B51876429980d20ed20796B1C4294f1Fc75145
Post-Hackathon Plan: Once deployment funds are secured, the contract will be deployed to Ethereum mainnet with zero code changes. Simply update the MNEE token address in the constructor:
// Current (Testnet)
MNEEBet(0xb8B51876429980d20ed20796B1C4294f1Fc75145);
// Mainnet Ready
MNEEBet(0x8ccedbAe4916b79da7F3F612EfB2EB93A2bFD6cF);
Brutalist design with clear value proposition and immediate wallet connection
On-chain identity system for reputation building and user discovery
Real-time feed of open and active bets, filterable by status and searchable by terms
Choose specific opponent or leave open for anyone to accept
Select trusted third-party arbiter for dispute resolution
Write clear, specific terms that define winning conditions
Define the MNEE amount each party will stake
Review all parameters before committing to the blockchain
Seamless wallet integration with clear transaction details
Live bet showing resolved status with initiator vs opponent, judge verdict, and blockchain registry confirmation. Contract automatically settles and pays out winner.
Verified smart contract on Sepolia testnet (mainnet-ready)
MNEEBet demonstrates programmable finance through:
-
Automated Escrow Management
- Funds automatically locked upon bet creation
- Smart contract holds both parties' stakes securely
- No manual intervention required
-
Atomic Settlement Engine
- Winner receives full pot in single transaction
- No claim step - instant payout on resolution
- Zero slippage, zero fees
-
Deterministic Financial Rules
- Immutable bet terms encoded on-chain
- Judge-verified outcomes trigger automatic payouts
- Draw conditions return equal stakes
-
Stable Value Guarantee
- MNEE stablecoin eliminates price volatility
- $1.00 USD peg maintained throughout bet lifecycle
- No risk of pot value fluctuation during disputes
- Creator Monetization: Content creators can monetize predictions/outcomes
- Community Engagement: Build engaged communities around shared interests
- Transparent Revenue: 100% of pot to winner (no platform cut)
sequenceDiagram
autonumber
participant C as Creator (Frontend)
participant O as Opponent (Frontend)
participant J as Judge (Frontend)
participant MT as MNEE Token Contract
participant BC as MNEEBet Contract
Note over C, BC: Registration Phase
C->>BC: registerUsername(username)
BC-->>C: Confirm Registration
Note over C, BC: Bet Creation Phase
C->>MT: approve(MNEEBet, amount)
MT-->>C: Approval Success
C->>BC: createBet(opponent, amount, terms, deadline, judge)
BC->>MT: transferFrom(creator, MNEEBet, amount)
MT-->>BC: Success (Escrow)
BC-->>C: BetCreated (Status: Open)
Note over O, BC: Bet Acceptance Phase
O->>MT: approve(MNEEBet, amount)
MT-->>O: Approval Success
O->>BC: acceptBet(betId)
BC->>MT: transferFrom(opponent, MNEEBet, amount)
MT-->>BC: Success (Escrow)
BC-->>O: BetAccepted (Status: Active)
Note over J, BC: Settlement Phase (After Deadline)
J->>BC: resolveWithJudge(betId, winner)
alt Creator Wins
BC->>MT: transfer(creator, totalPot)
else Opponent Wins
BC->>MT: transfer(opponent, totalPot)
else Draw
BC->>MT: transfer(creator, amount)
BC->>MT: transfer(opponent, amount)
end
BC-->>J: BetResolved (Status: Resolved)
Core Features:
- β ReentrancyGuard - Prevents reentrancy attacks
- β Ownable - Emergency controls for critical situations
- β Pausable - Circuit breaker for security incidents
- β Username Registry - On-chain identity system
- β Judge-Based Resolution - Human oracle for dispute settlement
Bet Lifecycle:
ββββββββββββ
β OPEN β Creator stakes MNEE β Contract holds funds
βββββββ¬βββββ
β
βΌ
ββββββββββββ
β ACTIVE β Opponent stakes β Both parties locked in
βββββββ¬βββββ
β
βΌ
ββββββββββββ
β RESOLVED β Judge decides β Winner paid instantly
ββββββββββββ
Security Measures:
- Non-custodial: No platform holds user funds
- Time-locked: Judges can only resolve after deadline
- Access control: Only assigned judge can resolve
- Emergency withdraw: Owner can refund disputed bets after 30 days
- Reentrancy protection: All external calls use nonReentrant modifier
| Layer | Technology |
|---|---|
| Blockchain | Ethereum (Mainnet-ready, Sepolia-deployed) |
| Stablecoin | MNEE ERC-20 (USD-backed) |
| Frontend | Next.js 16.1, TypeScript, TailwindCSS |
| State Management | Wagmi v2, TanStack Query |
| Wallet Integration | RainbowKit, WalletConnect v2 |
| Smart Contracts | Solidity 0.8.20, OpenZeppelin 5.x |
| Design System | Brutalist aesthetic, custom components |
Smart Contract: MNEEBet.sol
βββ Total Lines of Code: ~650 LOC
βββ Functions: 13 public/external
βββ Events: 8 emitted events
βββ Security: ReentrancyGuard + Ownable + Pausable
βββ Gas Optimized: Minimal storage reads/writes
- Register unique on-chain usernames
- Build reputation through bet history
- Search and discover other users
- Permanent, immutable handles
- Open Bets: Anyone can accept
- Private Bets: Designated opponent only
- Custom Terms: Any verifiable outcome
- Flexible Amounts: Any positive MNEE value
- User-selected trusted arbiters
- Time-locked resolutions (after deadline)
- Three outcomes: Creator wins, Opponent wins, Draw
- Instant atomic payouts
- 100% of pot goes to winner
- No platform rake or hidden fees
- Gas costs only (Ethereum network fees)
- Sustainable through volume, not extraction
- MNEE maintains $1.00 USD value
- No volatility risk during bet lifecycle
- Predictable outcomes and payouts
- Institutional-grade stablecoin backing
- Fitness goals (run X miles, lose Y pounds)
- Academic achievements (pass exam, finish project)
- Habit formation (quit smoking, daily meditation)
- Game outcomes and scores
- Tournament predictions
- Player performance metrics
- Deadline adherence
- Project completion
- Revenue targets
- Proposal outcome predictions
- Voting result forecasts
- Community milestone bets
- Connect Wallet β Link your Ethereum wallet via MetaMask/WalletConnect
- Register Username β Claim your unique on-chain identity
- Create Bet β Define terms, amount, opponent, judge, deadline
- Approve MNEE β Authorize contract to escrow your stake
- Confirm Transaction β Bet deployed to blockchain
- Wait for Acceptance β Opponent sees and accepts your bet
- Browse Marketplace β View all open bets by status/amount
- Select Challenge β Find interesting bet to accept
- Review Terms β Read conditions, verify judge
- Approve MNEE β Authorize your stake amount
- Accept Bet β Lock in your position
- Await Resolution β Judge decides after deadline
- Receive Assignment β Get notified when assigned as judge
- Monitor Deadline β Resolution unlocks after event occurs
- Verify Outcome β Confirm actual result of bet
- Select Winner β Choose Creator/Opponent/Draw
- Execute Resolution β Winner receives full pot instantly
- π Mainnet Deployment
- Secure 0.03-0.05 ETH for deployment gas
- Deploy to Ethereum with real MNEE token (
0x8ccedbAe4916b79da7F3F612EfB2EB93A2bFD6cF) - Launch to real users with real USD-backed stakes
- π Security Audit
- Engage professional audit firm
- Launch bug bounty program
- Community security review
- π Enhanced Features
- Multi-party bets (3+ participants)
- Tournament mode (bracket-style)
- Judge reputation scores
- Bet templates for common use cases
- π€ AI Integration
- AI-powered bet term suggestions
- Natural language bet creation
- Evidence analysis for judges
- Fraud detection
- π Oracle Integration
- Chainlink price feeds for sports
- Automated settlement for data-driven markets
- API-based outcome verification
- Hybrid judge + oracle resolution
- π± Mobile Apps
- Native iOS and Android
- Push notifications
- Streamlined mobile UX
- Offline bet creation
- π Ecosystem Expansion
- Deploy to L2s (Optimism, Arbitrum, Base)
- Cross-chain bet bridging
- DAO governance with token
- Professional sports betting support
- πΌ B2B Offerings
- White-label betting infrastructure
- API for third-party integrations
- Corporate challenge platforms
- Esports integration
-
First Truly Non-Custodial P2P Betting Platform
- No platform holds user funds at any point
- Smart contract is the only intermediary
- Users maintain full custody until settlement
-
Judge-Based Human Oracle System
- Combines smart contract automation with human judgment
- Flexible enough for subjective outcomes
- Scalable through reputation systems
-
Stablecoin-First Design
- Built specifically for MNEE USD stablecoin
- Eliminates crypto volatility from betting
- Makes outcomes predictable and fair
-
Zero-Fee Economics
- Sustainable without extracting value from users
- 100% of pot to winners, always
- Revenue model based on ecosystem growth
-
Social Identity Layer
- On-chain reputation and history
- Username system for discoverability
- Foundation for future social features
- Node.js 18+
- MetaMask or compatible Web3 wallet
- Sepolia testnet ETH (free from faucet)
# Clone the repository
git clone https://github.com/NikhilRaikwar/MNEEBet.git
cd MNEEBet
# Install dependencies
npm install
# Set up environment variables
cp .env.example .env.local
# Edit .env.local with your configuration
# Run development server
npm run devVisit http://localhost:3000 to see the app.
# Sepolia Testnet Deployment
NEXT_PUBLIC_MNEEBET_CONTRACT_ADDRESS=0x3480874a63D459046993915b52e612ee69947a81
NEXT_PUBLIC_MNEE_TOKEN_ADDRESS=0xb8B51876429980d20ed20796B1C4294f1Fc75145
# Ethereum Mainnet (Future)
# NEXT_PUBLIC_MNEEBET_CONTRACT_ADDRESS=<to-be-deployed>
# NEXT_PUBLIC_MNEE_TOKEN_ADDRESS=0x8ccedbAe4916b79da7F3F612EfB2EB93A2bFD6cF
# WalletConnect
NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID=<your-project-id>Sepolia Testnet:
- Address:
0x3480874a63D459046993915b52e612ee69947a81 - View on Sepolia Etherscan
Mock MNEE Token (Sepolia):
- Address:
0xb8B51876429980d20ed20796B1C4294f1Fc75145 - View on Sepolia Etherscan
Real MNEE Token (Ethereum Mainnet):
- Address:
0x8ccedbAe4916b79da7F3F612EfB2EB93A2bFD6cF - View on Etherscan
Core Betting Functions:
createBet()- Create a new betacceptBet()- Accept an open betresolveWithJudge()- Judge resolves and pays outcancelBet()- Cancel an open bet (creator only)disputeBet()- Flag a resolved bet for review
Username System:
registerUsername()- Register on-chain handlegetAddressByUsername()- Lookup user by namegetUsernameByAddress()- Lookup name by address
View Functions:
getBet()- Fetch bet detailsgetUserBets()- Get all bets for a usergetBetsInRange()- Bulk fetch for frontendgetPayoutInfo()- Calculate payout amounts
Audited Patterns:
- OpenZeppelin ReentrancyGuard for all state-changing functions
- Ownable access control with owner-only emergency functions
- Pausable circuit breaker for critical vulnerabilities
Attack Vectors Mitigated:
- β Reentrancy attacks (all external calls protected)
- β Front-running (no price-dependent logic)
- β Integer overflow/underflow (Solidity 0.8+ built-in checks)
- β Denial of service (gas-optimized, no unbounded loops)
Known Limitations:
- Judge selection is trust-based (social layer, not technical)
- Emergency withdraw requires 30-day timelock
- No built-in dispute arbitration beyond flagging
For Users:
- Only bet amounts you can afford to lose
- Choose judges you trust and verify their address
- Read bet terms carefully before accepting
- Verify contract address before approving MNEE
For Judges:
- Only accept judge role for bets you can fairly evaluate
- Document your reasoning for resolution decisions
- Resolve promptly after deadline passes
Engineering Quality:
- Production-grade Solidity contract with comprehensive security
- Modern TypeScript frontend with type safety throughout
- Robust error handling and edge case management
- Gas-optimized contract design
MNEE Integration:
- Deep integration with MNEE stablecoin as core escrow currency
- Proper ERC-20 approval flow with user-friendly UX
- Balance checks and allowance management
- Ready for mainnet MNEE token (identical interface)
Smart Contract Logic:
- Atomic settlement with instant payouts
- ReentrancyGuard protection on all state changes
- Comprehensive event logging for frontend indexing
- Username registry for social layer
Stability & Security:
- OpenZeppelin battle-tested libraries
- Pausable emergency controls
- 30-day timelock for disputed bets
- No known vulnerabilities in current implementation
Intuitive Interface:
- Step-by-step bet creation wizard
- Clear bet marketplace with filtering
- Real-time updates via wagmi hooks
- Mobile-responsive design throughout
User Flow:
- Seamless wallet connection via RainbowKit
- One-click username registration
- Guided bet creation with validation
- Instant feedback on all actions
Visual Design:
- Custom brutalist aesthetic (unique, memorable)
- Consistent design language
- High contrast for accessibility
- Professional typography and spacing
Polish:
- Loading states and skeletons
- Error messages with actionable guidance
- Success confirmations with Etherscan links
- Smooth animations and transitions
Real-World Utility:
- Solves genuine problem (centralized betting platforms)
- Addresses underserved market (P2P wagering)
- Applicable to multiple verticals (sports, personal, community)
User Base:
- Appeals to crypto-native and mainstream users
- Accessible to anyone with Ethereum wallet
- Low barrier to entry (small bet minimums)
Scalability:
- Contract designed for high transaction volume
- Frontend architecture supports growth
- L2 deployment path for cost reduction
Adoption Potential:
- Clear value proposition vs. alternatives
- Network effects (more users = more bets)
- Viral mechanics (social sharing of bets)
- Integration potential with other dApps
Novel Approach:
- First truly non-custodial P2P betting platform
- Judge-based human oracle system (hybrid approach)
- Stablecoin-first design (not just another crypto bet platform)
- On-chain identity for reputation building
Problem-Solving:
- Eliminates centralized custody risk
- Removes platform fees through smart design
- Solves volatility issue with MNEE stablecoin
- Addresses trust through transparent resolution
Differentiation:
- Not a prediction market (different model)
- Not a casino (no house, pure P2P)
- Not a DeFi protocol (application-specific)
- Unique positioning in Web3 ecosystem
Collective Decision-Making:
- Judge selection requires trust consensus
- Terms negotiation between parties
- Community-driven resolution through trusted judges
Economic Coordination:
- Trustless escrow eliminates counterparty risk
- Transparent treasury (all funds in smart contract)
- Automatic payout eliminates distribution disputes
- Zero-fee model aligns incentives perfectly
Agent-to-Agent Commerce:
- Programmable settlement rules
- Automated treasury management
- Smart contract as neutral intermediary
- Foundation for AI agent betting (future)
Governance & Transparency:
- All bets publicly auditable on-chain
- Immutable terms prevent disputes
- Judge decisions transparent and verifiable
- Community can flag bad actors
Project: MNEEBet - Decentralized P2P Betting Platform
MNEE Integration:
- Uses MNEE (0x8ccedbAe4916b79da7F3F612EfB2EB93A2bFD6cF) as sole betting currency
- Demonstrates programmable money through automated escrow
- Showcases instant atomic settlement with stable value
- Production-ready for mainnet MNEE token
Key Innovations:
- Non-custodial peer-to-peer betting with atomic payouts
- Human judge oracle system for flexible outcome verification
- Zero-fee economics (100% pot to winner)
- Stablecoin-first design eliminates volatility
- On-chain identity and reputation system
Status:
- β Fully functional on Sepolia testnet
- β Production-grade smart contract
- β Complete frontend application
- β³ Awaiting mainnet deployment funds (0.03-0.05 ETH)
Live Demo:
- Testnet App: https://mneebet.vercel.app
- Smart Contract: https://sepolia.etherscan.io/address/0x3480874a63D459046993915b52e612ee69947a81
Code Repository:
Developer: Nikhil Raikwar
- Location: Bhopal, Madhya Pradesh, India
- GitHub: NikhilRaikwar
- Twitter: @NikhilRaikwarr
Role: Solo developer responsible for:
- Smart contract architecture and development
- Frontend implementation (Next.js, TypeScript)
- UI/UX design (Brutalist aesthetic)
- Integration with MNEE stablecoin
- Documentation and testing
This project is licensed under the MIT License.
- MNEE Team for creating a robust USD-backed stablecoin
- Anthropic for AI assistance via Claude Code
- OpenZeppelin for battle-tested smart contract libraries
- Rainbow Kit for seamless wallet integration
- Vercel for hosting and deployment infrastructure
For Hackathon Judges:
- Email: raikwarnikhil80@gmail.com
- Twitter: @NikhilRaikwarr
- GitHub Issues: Report a bug
For General Inquiries:
- Website: https://mneebet.vercel.app
- GitHub Repo: https://github.com/NikhilRaikwar/MNEEBet
Built with β€οΈ for the MNEE Hackathon
Programmable Money. Decentralized Betting. Fair Outcomes.
π Website β’ π Docs β’ π¦ Twitter

