Cookoff X Admin
Cookoff is CodeChef VITβs flagship competitive programming event that challenges developers across the country. This repository contains the Admin Portal for Cookoff X β the single interface for managing users, problems, testcases, rounds, judging operations, and event monitoring.
π Deploy
(Replace with production URL)
https://cookoffx-admin.codechefvit.com
βοΈ Tech Stack:
π§ Features
- Authentication & Access Control:
- Secure admin-only login
- Role-based feature gating (Super Admin, Problem Setter, Judge, Observer)
- User Management:
- Paginated + searchable table
- Ban / unban
- Bulk round promotion
- Question Management:
- CRUD with rich editor/markdown preview
- Difficulty, tags, constraints metadata
- Testcase Management:
- List, create, update, delete
- Distinguish sample vs hidden
- Round / Contest Control:
- Control timer from admin (start rounds, add time)
- Notifications:
- Send notifications to users on the main portal
- Observability:
- Submission analytics page
Login Page
Portal
Dashboard
Edit Question Page
Question Creation Page
Question Page
Users Page
User submissions Page
Timer Page
Leaderboard Page
π Get Started
Clone:
git clone -b main https://github.com/<your-username>/cookoff-admin-X.git
cd cookoff-admin-XInstall:
pnpm install
# or
npm installEnvironment (create .env.local):
NEXT_PUBLIC_API_BASE_URL=
NEXT_PUBLIC_FIREBASE_API_KEY=
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=
NEXT_PUBLIC_FIREBASE_PROJECT_ID=
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=
NEXT_PUBLIC_FIREBASE_APP_ID=
NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID=Run:
pnpm devBuild:
pnpm build && pnpm startSuggested structure:
/app
/components
/services
/hooks
/lib
/types
/showcase_ss
π Checkout:
- Backend
Previous cycle example: https://github.com/CodeChefVIT/cookoff-10.0-be - Participant Portal
Previous example: https://github.com/CodeChefVIT/cookoff-portal-10.0
π€ Contribution Workflow
- Branch naming:
feat/<scope>-<short-desc>(e.g.feat/users-bulk-promote) - Conventional commits:
feat: add bulk user promotion - Run checks:
pnpm lint pnpm typecheck pnpm format
- Open PR with screenshots for UI changes.
π§ͺ Scripts
pnpm dev
pnpm lint
pnpm typecheck
pnpm format
pnpm buildβ Quality & Security
- Schema validation via Zod
- Protected routes with server session guard
- Role-based gating for destructive actions
- Avoid logging sensitive data
- API abstraction in
/services
π§± Roadmap
- Live scoreboard monitor
- Real-time judge queue depth
- Dark mode toggle
- Bulk user CSV import/export
- Rejudge workflow UI
- Anomaly detection (suspicious behavior)
- Email / webhook notifications
π Contributors (Alphabetical)
|
Abhinav Ganeshan |
Abhinav Pant |
Advik Gupta |
License
Made with β€οΈ by CodeChef-VIT









