Elite Telegram Betting Insights — high-confidence picks, proven data, and real results.
- React + Next.js 15 (App Router)
- TypeScript
- Tailwind CSS
- Vercel (deploy as-is)
- Supabase (auth & database)
- shadcn-style UI (Button, Accordion,
cnutility) - Storybook (component development & docs)
-
Install dependencies
npm install
-
Environment (optional for now)
Supabase is optional until you add auth. To run without it, either:
- Skip .env – the app works with no Supabase config.
- Or copy
.env.local.exampleto.env.localand leave the placeholder values. Replace them when you set up Supabase.
cp .env.local.example .env.local
Real values: Supabase Dashboard → your project → Settings → API.
-
Run dev
npm run dev
Open http://localhost:3000.
-
Storybook
npm run storybook
Open http://localhost:6006.
- Push to GitHub and import the repo in Vercel.
- Add
NEXT_PUBLIC_SUPABASE_URLandNEXT_PUBLIC_SUPABASE_ANON_KEYin Project → Settings → Environment Variables. - Deploy.
src/app/— Next.js App Router (layout, page, globals)src/components/ui/— reusable UI (Button, Accordion)src/components/landing/— landing sections (Header, Hero, Pricing, FAQ, etc.)src/lib/—utils.ts(cn), Supabase client/server.storybook/— Storybook config*.stories.tsx— component stories
Landing page follows the EscoBets Figma design: dark theme, yellow (#DFFF00) accents, sections for hero, promo, tweets, pricing, deals, FAQ, and footer.