尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Full-stack NBA player-stat forecasting app. Projects performance against posted lines, then grades every projection against the box score. Next.js, Supabase, 20 scheduled jobs.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗A full-stack NBA player-prop analytics engine. Prizm pulls live prop lines from sportsbooks every day, scores each one with an empirically-calibrated confidence model, grades its own past predictions against real box scores, and surfaces the highest-conviction picks and parlays through a Next.js dashboard.
Live: prizmproject.vercel.app
Every game day, on an automated schedule:
LOCK / PLAY / LEAN against stat-specific thresholds tuned on historical hit rates.The result is a self-correcting loop: predictions are logged, graded, and fed back into per-player bias and opponent-leak tables that sharpen the next day's scores.
The engine (lib/confidence.ts) is a transparent, deterministic weighted model — not a black box. Each stat type gets its own weight set, and scores are built from:
Thresholds and weights are backtested against a library of historical prop lines and graded outcomes, not hand-waved.
The Odds API ──> /api/props ──> Supabase (props + synthetic alts + snapshot)
│
ESPN box scores ──> /api/gamelogs ────┤
▼
/api/enrich ──> confidence model v6 ──> scored props
│
/api/feed (parlays) /api/grade ──> hit/miss/DNP
│ │
▼ ▼
Next.js dashboard /api/results (daily hit rates)
/api/player-bias, /api/opponent-leaks
Stack: Next.js 16 (App Router) · React 19 · TypeScript · Supabase (PostgreSQL) · Tailwind + shadcn/ui · Recharts · Vercel (20 scheduled cron jobs) · Python (offline backtesting & weight optimization)
Key directories:
app/ — dashboard pages: props board, feed (parlays), edge finder, performance, trendsapp/api/ — the ingest → enrich → grade pipeline, each route triggered by a Vercel cronlib/confidence.ts — the confidence enginelib/odds-api.ts / lib/espn-gamelogs.ts — live data adaptersscripts/ — Python backtesting, calibration, weight optimization, and the Kalshi edge finderscripts/kalshi_edges/ — bridges Prizm's model probabilities to Kalshi NBA markets to find priced edgesPrizm keeps an honest scoreboard. Every prediction is snapshotted before tip-off and graded after the final whistle:
prop_grades — individual results (hit / miss / DNP)prop_results — aggregated daily hit rates by confidence labelplayer_line_bias / opponent_stat_leaks — systematic biases mined from the full game-log history and reapplied as score adjustmentsThis makes the model falsifiable — you can see whether a LOCK actually locks.
npm install
cp .env.example .env.local # add Supabase + The Odds API keys
npm run dev # http://localhost:3000
npm test # vitest
The scheduled pipeline runs on Vercel cron (see vercel.json); locally you can hit the /api/* routes directly to seed, enrich, and grade.
MIT