Product Requirements Document (PRD) Feature: Points & Coins System for Drama-Otaku --- 1. Objective Implement a Points & Coins system to offset Gofile bandwidth costs while giving subscribers flexibility. The system enforces daily download limits, allows users to redeem points for additional GB, and provides a paid coin system as a fallback. VIP and Contributors have unlimited downloads. --- 2. User Roles Subscriber - Daily download limit (configurable, e.g., 3 GB). - Can earn points through site engagement. - Redeem points for extra GB. - Purchase and spend coins for extra GB. VIP - Unlimited downloads. - Points/coins visible but not required. Contributor - Unlimited downloads. - Points/coins visible but not required. --- 3. Core Features a. Wallet Shows balances: - Points - Coins - Daily Limit (remaining, used, total) Activity Log: - Earn points events (login, upload subtitles, contributions) - Spend points/coins for GB - Purchases of coin bundles b. Download Flow Before a file is downloaded, system checks user’s remaining GB: - If within limit → allow download. - If limit exceeded (subscribers only) → show Download Popup : - Spend 100 points → +1 GB - Spend 1 coin → +1 GB - Buy coins (redirect to checkout) c. Coin Store Bundles available: - $1 → 10 Coins (+10 GB) - $5 → 60 Coins (+60 GB) - $10 → 150 Coins (+150 GB) Secure checkout with Stripe/PayPal. d. Points System Earning Points (example configuration): - Daily login → +5 points - Comment/post → +2 points - Submit drama info → +10–20 points - Upload subtitles → +50 points Redeeming Points: - 100 points = +1 GB - 400 points = +5 GB bundle (optional) --- 4. UI Components #### Wallet View Stats cards for Points, Coins, Today’s Limit, Remaining GB. Buttons: - Earn Points (stub/demo) - Redeem 100 points → +1 GB - Buy Coins (shortcut to store) Activity log list with timestamped events. #### Download Popup (Limit Reached) Modal with options: - Spend 100 points → +1 GB - Spend 1 coin → +1 GB - Buy coins (redirect) #### Buy Coins View Grid of coin bundles with Buy Now buttons. Shows current coin balance. --- 5. Technical Implementation #### Backend Tables Required: - users (role, baseline daily limit) - wallets (user_id, points, coins, daily_limit, used_gb, extra_points_gb, extra_coins_gb) - wallet_history (id, user_id, type, amount, message, created_at) APIs Needed: - GET /wallet → return wallet balances + history - POST /wallet/earn → award points - POST /wallet/redeem → spend points → +GB - POST /wallet/spend-coins → spend coins → +GB - POST /wallet/purchase → buy coin bundles (integrate Stripe/PayPal) - POST /download → attempt download (check and decrement quota) Mockups of UI See Canva link: https://www.canva.com/design/DAGwbJgZTRM/5Q-gNvdPhUrDcJXTDdVYCg/view?utm_content=DAGwbJgZTRM&utm_campaign=designshare&utm_medium=link2&utm_source=uniquelinks&utlId=hca104390e3 --- 6. Acceptance Criteria Subscribers: - See daily limit and balances. - Cannot download beyond daily cap without points/coins. - Points can be earned and redeemed for GB. - Coins can be purchased and spent. VIP/Contributors: - Always unlimited. - Wallet still displays but without restrictions. Activity log tracks all actions. Secure checkout flow for purchasing coins. --- 7. Future Enhancements Admin panel to adjust point earning rates and coin pricing. Bundle redemption with points (e.g., 400 pts = 5 GB). Gamification badges for engagement (earning points). ---