Flutter & Node.js Wallet Game Development
Budget: $250 – $750 USD
Betting Game App - Developer Requirements Document
1. Overview
This document outlines the complete functionality and development requirements for a betting game app. Users will be able to select numbers between 1 and 100 to bet on. A new draw takes place every 10 minutes. The app will determine the winning number in such a way that ensures the system retains 20% of the total bet pool, and 80% is used for payouts to winners. The app must be sleek, responsive, and optimized for mobile devices.
2. Game Logic and Profit Model
• Users can select any combination of numbers from 1 to 100 in each round.
• Each round lasts exactly 10 minutes.
• The system collects all bets, locks 20% of the total pool as profit, and calculates possible winnings from the remaining 80%.
• The system selects a winning number such that total payouts do not exceed 80% of the pool.
• If multiple numbers satisfy this condition, one is selected at random.
• If no number fits, the one with lowest excess loss is chosen.
3. User Interface Requirements
3.1 Splash Screen / App Intro
• Animated logo centered with a tagline: “Every 10 Minutes, A Fortune Turns.”
• Background gradient with subtle animated particles.
• Sound toggle on top-right corner.
• Auto transition after 3 seconds.
3.2 Login / Signup
• OTP-based mobile login.
• Optional login via Google or Apple.
• Referral code input (optional).
3.3 Dashboard / Home
• Shows main and bonus wallet balance.
• Countdown to next draw.
• Navigation: Bet, Wallet, History, Profile.
3.4 Deposit to Wallet
• Display rotating UPI ID/bank details.
• User inputs amount and TXN ID.
• Upload screenshot option.
• Submit button for verification.
3.5 Place Bet
• Grid layout for number selection (1–100).
• Input field for bet amount.
• Total stake calculated.
• Countdown timer.
• Recent draw results with timestamps shown at top.
• Place Bet button at the bottom.
3.6 Bet Confirmation
• Display selected numbers and total bet amount before confirming.
• Confirm and Cancel buttons.
3.7 Wallet
• Displays separate Main and Bonus balances.
• Track all deposits, withdrawals, winnings.
• Admin-controlled limit on bonus usage (per round/day/time).
3.8 Withdraw
• Enter withdrawal amount and UPI ID.
• Submit for admin approval.
3.9 Result Tracker
• Track previous winning numbers for the past 30 days.
• Filter by time slot (e.g., 1:00 PM, 1:10 PM, etc.).
• Search by date and number.
3.10 History Screens
• Bet History: Selected numbers, round time, win/loss status.
• Transaction History: Deposits, withdrawals, and payouts.
4. Admin Panel Features
• Admin login with secure credentials.
• Dashboard with round-wise analytics and total profit.
• Deposit verification panel with screenshot view.
• Withdrawal request management.
• User list with ability to block, modify wallet, or view history.
• Manual result control (override winning number if needed).
• Add/remove UPI/Bank accounts for rotation.
5. Suggested Tech Stack
• Frontend: React Native or Flutter.
• Backend: Node.js or Python (FastAPI/Django).
• Database: PostgreSQL or MongoDB.
• Real-time Engine: Firebase or Socket.IO.
• Hosting: AWS, DigitalOcean, or offshore VPS.
6. Security & Compliance
• One-device login enforcement.
• Fraud detection: IP monitoring, velocity check.
• Geo-blocking restricted states.
• KYC verification logic (if needed).
1. Overview
This document outlines the complete functionality and development requirements for a betting game app. Users will be able to select numbers between 1 and 100 to bet on. A new draw takes place every 10 minutes. The app will determine the winning number in such a way that ensures the system retains 20% of the total bet pool, and 80% is used for payouts to winners. The app must be sleek, responsive, and optimized for mobile devices.
2. Game Logic and Profit Model
• Users can select any combination of numbers from 1 to 100 in each round.
• Each round lasts exactly 10 minutes.
• The system collects all bets, locks 20% of the total pool as profit, and calculates possible winnings from the remaining 80%.
• The system selects a winning number such that total payouts do not exceed 80% of the pool.
• If multiple numbers satisfy this condition, one is selected at random.
• If no number fits, the one with lowest excess loss is chosen.
3. User Interface Requirements
3.1 Splash Screen / App Intro
• Animated logo centered with a tagline: “Every 10 Minutes, A Fortune Turns.”
• Background gradient with subtle animated particles.
• Sound toggle on top-right corner.
• Auto transition after 3 seconds.
3.2 Login / Signup
• OTP-based mobile login.
• Optional login via Google or Apple.
• Referral code input (optional).
3.3 Dashboard / Home
• Shows main and bonus wallet balance.
• Countdown to next draw.
• Navigation: Bet, Wallet, History, Profile.
3.4 Deposit to Wallet
• Display rotating UPI ID/bank details.
• User inputs amount and TXN ID.
• Upload screenshot option.
• Submit button for verification.
3.5 Place Bet
• Grid layout for number selection (1–100).
• Input field for bet amount.
• Total stake calculated.
• Countdown timer.
• Recent draw results with timestamps shown at top.
• Place Bet button at the bottom.
3.6 Bet Confirmation
• Display selected numbers and total bet amount before confirming.
• Confirm and Cancel buttons.
3.7 Wallet
• Displays separate Main and Bonus balances.
• Track all deposits, withdrawals, winnings.
• Admin-controlled limit on bonus usage (per round/day/time).
3.8 Withdraw
• Enter withdrawal amount and UPI ID.
• Submit for admin approval.
3.9 Result Tracker
• Track previous winning numbers for the past 30 days.
• Filter by time slot (e.g., 1:00 PM, 1:10 PM, etc.).
• Search by date and number.
3.10 History Screens
• Bet History: Selected numbers, round time, win/loss status.
• Transaction History: Deposits, withdrawals, and payouts.
4. Admin Panel Features
• Admin login with secure credentials.
• Dashboard with round-wise analytics and total profit.
• Deposit verification panel with screenshot view.
• Withdrawal request management.
• User list with ability to block, modify wallet, or view history.
• Manual result control (override winning number if needed).
• Add/remove UPI/Bank accounts for rotation.
5. Suggested Tech Stack
• Frontend: React Native or Flutter.
• Backend: Node.js or Python (FastAPI/Django).
• Database: PostgreSQL or MongoDB.
• Real-time Engine: Firebase or Socket.IO.
• Hosting: AWS, DigitalOcean, or offshore VPS.
6. Security & Compliance
• One-device login enforcement.
• Fraud detection: IP monitoring, velocity check.
• Geo-blocking restricted states.
• KYC verification logic (if needed).