- π Long-term Contests β Join month-long coding challenges with structured curricula
- β‘ LeetCode Integration β Automatic verification of problem submissions
- π Live Leaderboards β Real-time rankings with streak tracking
- π― Weekend Tests β Performance checkpoints with penalty system
- π₯ Streak System β Daily coding habit tracking with midnight delimiter
- π³ Payment Integration β Razorpay-powered contest entry and penalties
- π¨ Modern UI β Beautiful interface with Framer Motion animations
- Sign Up & Join β Create account, link LeetCode username, and join a contest
- Daily Practice β Solve assigned daily problems (Easy/Medium/Hard) to maintain your streak
- Weekend Tests β Complete 3 problems every Saturday-Sunday before midnight IST
- Auto Verification β Submit on LeetCode, we verify and update your progress automatically
- Pay or Progress β Miss weekend tests? Pay penalty. Complete everything? Stay in the game!
- Compete & Win β Climb the leaderboard with points from materials, homework, and weekend tests
# Install dependencies
npm install
# Set up environment variables
cp .env.example .env
# Start database
./start-database.sh
# Run migrations
npm run db:generate
# Start dev server
npm run devVisit http://localhost:3000
- Framework β Next.js 15 with App Router
- Language β TypeScript
- API β tRPC for type-safe endpoints
- Database β PostgreSQL with Prisma ORM
- Auth β Supabase Authentication
- Payments β Razorpay
- UI β Tailwind CSS, Framer Motion, Lucide Icons
- Real-time β Pusher
# Supabase
NEXT_PUBLIC_SUPABASE_URL=
NEXT_PUBLIC_SUPABASE_ANON_KEY=
AUTH_SECRET=
# Database
DATABASE_URL=
# OpenAI
OPENAI_API_KEY=
# Pusher (Real-time updates)
PUSHER_APP_ID=
PUSHER_KEY=
PUSHER_SECRET=
PUSHER_CLUSTER=
NEXT_PUBLIC_PUSHER_KEY=
NEXT_PUBLIC_PUSHER_CLUSTER=
# Razorpay (Payments)
RAZORPAY_KEY_ID=
RAZORPAY_KEY_SECRET=
NEXT_PUBLIC_RAZORPAY_KEY_ID=
# SMTP (Email notifications)
SMTP_HOST=
SMTP_PORT=
SMTP_USER=
SMTP_PASSWORD=
# Cron (Scheduled tasks)
CRON_SECRET=MIT License - see LICENSE
Ashton Mathias |
Sushan Shetty |
Built with π by the FluxCode team