feat: initial BetonBLK project structure

This commit is contained in:
Kev
2026-03-21 07:19:34 -04:00
commit f70db389e2
5 changed files with 200 additions and 0 deletions
Executable
+84
View File
@@ -0,0 +1,84 @@
# BetonBLK — Product Roadmap
## PHASE 1 — FOUNDATION (Weeks 1-2)
### Feature 1.1 — Odds API Integration (no dependencies — build first)
- GET /api/odds/nba — Returns today's NBA props normalized across DraftKings, FanDuel, BetMGM
- GET /api/odds/ncaab — NCAA props in season
- Data shape: { player, team, stat_type, line, over_odds, under_odds, book, timestamp }
- Cache: 15-minute refresh. Graceful fallback if rate limit hit.
- Tests: Mock API response, verify normalization, verify cache behavior
- Status: NOT STARTED
### Feature 1.2 — NBA_API Stats Wrapper (no dependencies — build parallel with 1.1)
- getPlayerSeasonAvg(playerId, statType) → season average
- getPlayerLast10Avg(playerId, statType) → last 10 game average
- getPlayerSplits(playerId, statType, filters) → home/away/B2B/vs opponent situational
- Cache: 24hr on season averages, 1hr on recent games
- Status: NOT STARTED
### Feature 1.3 — Prop Analysis Engine (depends: 1.1 + 1.2)
- Input: { player, stat_type, line, book }
- Step 1-6: Season avg compare → situational factors → injury check → kill conditions → grade A/B/C/D → BetonBLK voice format
- Output: { grade, edge_pct, reasoning, kill_conditions_triggered, confidence }
- Status: NOT STARTED
### Feature 1.4 — Database Schema — Supabase (no dependencies)
- users: id, email, tier, scan_count, scan_reset_date, stripe_customer_id
- picks: id, user_id, player, stat, line, grade, reasoning, created_at
- outcomes: id, pick_id, result, actual_value, logged_at
- bets: id, user_id, amount, slip_data, book, placed_at
- performance: id, user_id, roi, win_rate, sample_size, period
- scan_sessions: id, user_id, legs[], final_grade, kill_conditions, created_at
- Status: NOT STARTED
### Feature 1.5 — Bet Submission (3 Methods) (depends: 1.4)
- Screenshot: POST /api/bets/screenshot — image upload, OCR extracts bet data
- Quick slip: POST /api/bets/quickslip — natural language: 'Jokic PRA 50.5 over $20 DraftKings'
- Sportsbook sync: POST /api/bets/sync — OAuth, auto-logs all bets
- Status: NOT STARTED
## PHASE 2 — CORE PRODUCT (Weeks 3-4)
Depends on: Phase 1 complete
### Feature 2.1 — Parlay Scan (depends: 1.3 + 1.4)
- Logic: Grade each leg → check correlation → grade overall parlay
- Scan cap: Check scan_count before processing. If 5: return personalized upgrade pitch
- Status: NOT STARTED
### Feature 2.2 — Real-Time Line Movement + Cascade Detection (depends: 1.1)
- Line movement: Alert when line moves 0.5+ points from 8 AM baseline. Flag sharp money direction.
- Cascade: Star player scratches → identify affected props → re-grade → alert affected users
- Status: NOT STARTED
## PHASE 3 — WEB MVP (Weeks 5-6)
Depends on: Phase 2 complete
### Feature 3.1 — Landing Page (no code dependencies)
- Next.js. Hero, How It Works, 3-tier pricing with founder badge, email CTA
- Status: NOT STARTED
### Feature 3.2 — Scan UI (depends: 2.1)
- Natural language input or manual leg builder
- Color-coded grades. Scan counter.
- Status: NOT STARTED
### Feature 3.3 — Bet Tracker UI (depends: 1.5)
- Win rate, ROI, behavioral pattern card at 30+ bets
- Status: NOT STARTED
### Feature 3.4 — Stripe Integration (depends: 1.4)
- Checkout → subscription → webhook → tier update in DB
- Founder code locks rate
- Status: NOT STARTED
## DEPENDENCY MAP
```
1.1 (Odds API) ──┐
├──→ 1.3 (Prop Engine) ──→ 2.1 (Parlay Scan) ──→ 3.2 (Scan UI)
1.2 (NBA API) ───┘
1.1 ──→ 2.2 (Line Movement + Cascade)
1.4 (DB Schema) ──→ 1.5 (Bet Submission) ──→ 3.3 (Bet Tracker)
1.4 ──→ 3.4 (Stripe)
3.1 (Landing Page) — no code dependencies
```