Build Rewards Earning Platform
Budget: ₹600 – ₹1,500 INR
Project: "RewardTask" — Taskbucks-inspired mobile-first web platform (do not copy TaskBucks branding — build original UI).
Objective:
एक responsive, mobile-first, secure और production-ready web platform बनाएं जहाँ users छोटे tasks करके coins कमाएँ और उन्हें recharge/Paytm/Wallet में redeem कर सकें। साथ में advertiser/offerwall और admin panel होना चाहिए जिससे campaigns, payouts और fraud-control manage हो सके।
Tech stack (choose one of the two recommended stacks):
A) Firebase-first (तेज़ MVP)
- Frontend: React (Create React App / Vite) या single-page HTML/CSS/JS (mobile-first, Tailwind optional)
- Auth: Firebase Authentication (Phone OTP + Google)
- Database: Firebase Firestore
- Storage: Firebase Storage (proof images)
- Server logic: Firebase Cloud Functions (verification, webhook handling)
- Payments/Redemptions: Integrate Paytm / Razorpay / payout APIs via server functions
B) Node.js production stack
- Frontend: React + Tailwind (or Next.js for SSR)
- Backend: Node.js + Express
- DB: PostgreSQL / MySQL (or MongoDB)
- Storage: AWS S3 (proof images)
- Auth: Firebase Auth or JWT (email/phone)
- Deploy: Vercel/Netlify (frontend) + Heroku / Railway / VPS (backend)
Core Functional Requirements (user-side):
1. Landing page — modern hero, app screenshots, trust badges, download/link to app.
2. Onboarding / Auth — phone OTP + Google login, optional promo code input.
3. Dashboard — balance (coins), today’s tasks, progress, quick redeem CTA.
4. Reward Wall (Tasks List) — cards for tasks with:
- Task title, coin reward, expiry, target OS/geo.
- Two buttons on each task card:
a) “Start Task” (or “Go to Task”) — takes user to task detail / advertiser URL / in-app install flow.
b) “Submit Proof” — opens proof-upload modal (image + text + optional URL / screenshot).
- For app-install tasks show estimated reward + verification rules.
5. Task Detail — step-by-step instructions, exact conditions (e.g., keep app installed for 3 days), timer if needed.
6. Watch Video Task / Website Visit — require user to stay 30 seconds (client timer + server-side verification). Reward only after server confirms.
7. Quiz / Survey / Mini-games — complete and get instant coins.
8. Referral system — unique link, copy/share, reward logic (clear rules).
9. Wallet & Withdraw — coins -> convert to INR (conversion rate configurable), withdrawal methods: Paytm, UPI, mobile recharge. Minimum withdraw limit + processing time UI.
10. Proof / Dispute flow — users can upload image/screenshots, admin can accept/reject with reason.
11. Notifications — push (FCM) + in-app to show new offers, task updates.
12. Profile & KYC — user name, photo, phone, optional KYC for high withdrawals.
13. Help/FAQ/Support — tickets, chat/email.
Admin & Advertiser Features:
1. Admin dashboard — user list, balances, transactions, payout requests, verify proofs, suspend users.
2. Offer manager — create/edit/delete tasks, set reward, targeting (geo, device), max redemptions, time window.
3. Advertiser portal (optional) — upload offers, see conversions, set payouts.
4. Reports & Analytics — DAU/MAU, revenue, payouts, eCPM, task performance.
5. Fraud monitoring — flagged tasks, suspicious users, IP/device fingerprinting.
6. Payment & payout logs — audit trail; manual payout processing UI.
Verification & Anti-fraud (must):
- Use offerwall SDKs / advertiser callbacks for installs and offer conversions (server webhook verification).
- For website-visit and video tasks: use server-side timers and signed tokens. Example flow: when user clicks StartTask => server issues timed token valid for X seconds; frontend pings server periodically; server marks verified only if token expiry + ping count satisfied.
- CAPTCHA and rate-limits on task submits.
- Device / IP heuristics + manual review for high-value payouts.
- Proof moderation queue with accept/reject and appeal.
Database Schema (SQL-like) — minimal set:
users(id, phone, email, name, coins, kyc_status, created_at, last_login)
tasks(id, title, description, reward_coins, type, target_url, conditions_json, max_redemptions, status)
user_tasks(id, user_id, task_id, status(enum: pending, submitted, verified, rejected), proof_url, submitted_at, verified_at)
transactions(id, user_id, type(enum: earn, redeem, payout), amount_coins, amount_inr, status, ref_id, created_at)
referrals(id, referrer_user_id, referred_user_id, reward_given, created_at)
payout_requests(id, user_id, amount_inr, method, details_json, status, processed_at)
admins(id, name, role, email, password_hash, created_at)
(If Firestore: use collections users, tasks, userTasks, transactions, referrals, payouts)
API Endpoints (examples):
POST /api/auth/otp-request {phone} -> { success }
POST /api/auth/verify-otp {phone, code} -> { token, user }
GET /api/tasks?geo=IN -> [ list of tasks ]
GET /api/task/:id -> {task details}
POST /api/task/:id/submit-proof { Authorization: Bearer, body: { text, imageUrl } } -> { status: pending }
POST /api/withdraw { Authorization, method, amount } -> { request_id }
GET /api/user/transactions -> [...]
Admin:
POST /admin/task -> create task
GET /admin/user-tasks?status=pending -> list
POST /admin/user-tasks/:id/verify -> { verdict, notes }
UI / Design Requirements:
- Mobile-first, responsive, clean card-based UI.
- Palette: 1 primary color + white + neutral greys + accent.
- Buttons: outlined primary buttons with subtle shadow; **on click animate**: scale down 0.98 + ripple + quick color flash. Use CSS transform + transition.
- Task cards should show progress bars and clear CTA buttons.
- Use icons (SVG) for fast load.
- Animations: micro-interactions only (do not overdo).
- Accessibility: proper contrast, ARIA labels.
- Performance: lazy-load images, compress assets.
MVP Scope (priority):
1. Auth, Dashboard, Reward Wall (app-install + watch video + website visit tasks).
2. Wallet + Withdraw (Paytm/UPI).
3. Admin panel (create offer + verify proofs).
4. Basic anti-fraud (rate-limits, captcha).
5. Logs and analytics basic.
Integration notes (verification):
- For app install tasks: integrate offerwall providers (e.g., AdGate, Tapjoy, Fyber — choose reputable provider) or ask advertisers for server-side postbacks. Prefer server-verified callbacks.
- For watch-video tasks: use rewarded ad networks (Google AdMob rewarded ads) to get verifiable callbacks OR host your own videos + server token validation.
- For website-visit tasks: issue server token at start and require periodic pings (e.g., every 5s). Only grant once total time >= 30s and token valid.
Security & Compliance:
- Don’t promise instant real-money without proper anti-fraud.
- Implement server-side validation for every reward.
- Store sensitive PII encrypted. Follow local regulations for KYC and payouts.
- Terms & Privacy policy pages required.
Deliverables (ask the developer/AI to provide):
- Full source code (frontend + backend) in Git repo.
- DB schema + seed data.
- Admin panel working.
- Deployment scripts + step-by-step README for production (how to deploy to chosen hosting).
- Simple test plan (unit/integration tests for reward flows).
- Documentation for advertisers: how to add offers and how callbacks work.
Acceptance criteria (MVP):
- User can signup/login, complete at least 3 types of tasks, earn coins, submit proof, admin can verify and user can withdraw minimum amount.
- All pages mobile responsive, buttons outlined + animate on click.
- Server-side verification exists for all rewarded events.
Extra: Provide a simple demo dataset and 10 dummy tasks (mix of app-install, watch-video, website-visit, quiz) for testing.
Important: Avoid copying TaskBucks brand assets — design should be original while UX can be inspired from TaskBucks.
END OF PROMPT
Objective:
एक responsive, mobile-first, secure और production-ready web platform बनाएं जहाँ users छोटे tasks करके coins कमाएँ और उन्हें recharge/Paytm/Wallet में redeem कर सकें। साथ में advertiser/offerwall और admin panel होना चाहिए जिससे campaigns, payouts और fraud-control manage हो सके।
Tech stack (choose one of the two recommended stacks):
A) Firebase-first (तेज़ MVP)
- Frontend: React (Create React App / Vite) या single-page HTML/CSS/JS (mobile-first, Tailwind optional)
- Auth: Firebase Authentication (Phone OTP + Google)
- Database: Firebase Firestore
- Storage: Firebase Storage (proof images)
- Server logic: Firebase Cloud Functions (verification, webhook handling)
- Payments/Redemptions: Integrate Paytm / Razorpay / payout APIs via server functions
B) Node.js production stack
- Frontend: React + Tailwind (or Next.js for SSR)
- Backend: Node.js + Express
- DB: PostgreSQL / MySQL (or MongoDB)
- Storage: AWS S3 (proof images)
- Auth: Firebase Auth or JWT (email/phone)
- Deploy: Vercel/Netlify (frontend) + Heroku / Railway / VPS (backend)
Core Functional Requirements (user-side):
1. Landing page — modern hero, app screenshots, trust badges, download/link to app.
2. Onboarding / Auth — phone OTP + Google login, optional promo code input.
3. Dashboard — balance (coins), today’s tasks, progress, quick redeem CTA.
4. Reward Wall (Tasks List) — cards for tasks with:
- Task title, coin reward, expiry, target OS/geo.
- Two buttons on each task card:
a) “Start Task” (or “Go to Task”) — takes user to task detail / advertiser URL / in-app install flow.
b) “Submit Proof” — opens proof-upload modal (image + text + optional URL / screenshot).
- For app-install tasks show estimated reward + verification rules.
5. Task Detail — step-by-step instructions, exact conditions (e.g., keep app installed for 3 days), timer if needed.
6. Watch Video Task / Website Visit — require user to stay 30 seconds (client timer + server-side verification). Reward only after server confirms.
7. Quiz / Survey / Mini-games — complete and get instant coins.
8. Referral system — unique link, copy/share, reward logic (clear rules).
9. Wallet & Withdraw — coins -> convert to INR (conversion rate configurable), withdrawal methods: Paytm, UPI, mobile recharge. Minimum withdraw limit + processing time UI.
10. Proof / Dispute flow — users can upload image/screenshots, admin can accept/reject with reason.
11. Notifications — push (FCM) + in-app to show new offers, task updates.
12. Profile & KYC — user name, photo, phone, optional KYC for high withdrawals.
13. Help/FAQ/Support — tickets, chat/email.
Admin & Advertiser Features:
1. Admin dashboard — user list, balances, transactions, payout requests, verify proofs, suspend users.
2. Offer manager — create/edit/delete tasks, set reward, targeting (geo, device), max redemptions, time window.
3. Advertiser portal (optional) — upload offers, see conversions, set payouts.
4. Reports & Analytics — DAU/MAU, revenue, payouts, eCPM, task performance.
5. Fraud monitoring — flagged tasks, suspicious users, IP/device fingerprinting.
6. Payment & payout logs — audit trail; manual payout processing UI.
Verification & Anti-fraud (must):
- Use offerwall SDKs / advertiser callbacks for installs and offer conversions (server webhook verification).
- For website-visit and video tasks: use server-side timers and signed tokens. Example flow: when user clicks StartTask => server issues timed token valid for X seconds; frontend pings server periodically; server marks verified only if token expiry + ping count satisfied.
- CAPTCHA and rate-limits on task submits.
- Device / IP heuristics + manual review for high-value payouts.
- Proof moderation queue with accept/reject and appeal.
Database Schema (SQL-like) — minimal set:
users(id, phone, email, name, coins, kyc_status, created_at, last_login)
tasks(id, title, description, reward_coins, type, target_url, conditions_json, max_redemptions, status)
user_tasks(id, user_id, task_id, status(enum: pending, submitted, verified, rejected), proof_url, submitted_at, verified_at)
transactions(id, user_id, type(enum: earn, redeem, payout), amount_coins, amount_inr, status, ref_id, created_at)
referrals(id, referrer_user_id, referred_user_id, reward_given, created_at)
payout_requests(id, user_id, amount_inr, method, details_json, status, processed_at)
admins(id, name, role, email, password_hash, created_at)
(If Firestore: use collections users, tasks, userTasks, transactions, referrals, payouts)
API Endpoints (examples):
POST /api/auth/otp-request {phone} -> { success }
POST /api/auth/verify-otp {phone, code} -> { token, user }
GET /api/tasks?geo=IN -> [ list of tasks ]
GET /api/task/:id -> {task details}
POST /api/task/:id/submit-proof { Authorization: Bearer, body: { text, imageUrl } } -> { status: pending }
POST /api/withdraw { Authorization, method, amount } -> { request_id }
GET /api/user/transactions -> [...]
Admin:
POST /admin/task -> create task
GET /admin/user-tasks?status=pending -> list
POST /admin/user-tasks/:id/verify -> { verdict, notes }
UI / Design Requirements:
- Mobile-first, responsive, clean card-based UI.
- Palette: 1 primary color + white + neutral greys + accent.
- Buttons: outlined primary buttons with subtle shadow; **on click animate**: scale down 0.98 + ripple + quick color flash. Use CSS transform + transition.
- Task cards should show progress bars and clear CTA buttons.
- Use icons (SVG) for fast load.
- Animations: micro-interactions only (do not overdo).
- Accessibility: proper contrast, ARIA labels.
- Performance: lazy-load images, compress assets.
MVP Scope (priority):
1. Auth, Dashboard, Reward Wall (app-install + watch video + website visit tasks).
2. Wallet + Withdraw (Paytm/UPI).
3. Admin panel (create offer + verify proofs).
4. Basic anti-fraud (rate-limits, captcha).
5. Logs and analytics basic.
Integration notes (verification):
- For app install tasks: integrate offerwall providers (e.g., AdGate, Tapjoy, Fyber — choose reputable provider) or ask advertisers for server-side postbacks. Prefer server-verified callbacks.
- For watch-video tasks: use rewarded ad networks (Google AdMob rewarded ads) to get verifiable callbacks OR host your own videos + server token validation.
- For website-visit tasks: issue server token at start and require periodic pings (e.g., every 5s). Only grant once total time >= 30s and token valid.
Security & Compliance:
- Don’t promise instant real-money without proper anti-fraud.
- Implement server-side validation for every reward.
- Store sensitive PII encrypted. Follow local regulations for KYC and payouts.
- Terms & Privacy policy pages required.
Deliverables (ask the developer/AI to provide):
- Full source code (frontend + backend) in Git repo.
- DB schema + seed data.
- Admin panel working.
- Deployment scripts + step-by-step README for production (how to deploy to chosen hosting).
- Simple test plan (unit/integration tests for reward flows).
- Documentation for advertisers: how to add offers and how callbacks work.
Acceptance criteria (MVP):
- User can signup/login, complete at least 3 types of tasks, earn coins, submit proof, admin can verify and user can withdraw minimum amount.
- All pages mobile responsive, buttons outlined + animate on click.
- Server-side verification exists for all rewarded events.
Extra: Provide a simple demo dataset and 10 dummy tasks (mix of app-install, watch-video, website-visit, quiz) for testing.
Important: Avoid copying TaskBucks brand assets — design should be original while UX can be inspired from TaskBucks.
END OF PROMPT