Skip to content

Repository files navigation

DIU ContestHub

The competitive programming platform of Daffodil International University — exam-style C practice plus inter-university contests with NSU, AIUB, and BRAC.

Features

  • 140 exam-style C problems (practice without login)
  • Register / login with university profile
  • Email verification + forgot password (SMTP)
  • Per-university practice & contest leaderboards
  • Advanced admin command center with analytics, system health, and audit history
  • Contest control center: scheduling, rules, problem ordering, go-live, and monitoring
  • User access management and complete judge submission inspection
  • Logged-in solves persist to Neon Postgres

Setup

  1. Copy env template:
cp .env.example .env
  1. Fill in:
  • DATABASE_URL — Neon Postgres connection string
  • AUTH_SECRETopenssl rand -base64 32
  • APP_URL — e.g. http://localhost:3000
  • SMTP vars for mail
  1. Push schema + seed admin:
npm install
npm run db:push
npm run db:seed

Set ADMIN_EMAIL and a strong ADMIN_PASSWORD (minimum 12 characters) in .env before running the seed. No default administrator password is used.

  1. Run:
npm run dev

Requires clang or gcc for the local C judge.

Scripts

Script Purpose
npm run db:push Sync Prisma schema to Neon
npm run db:seed Create / update admin user
npm run db:studio Browse data
npm run build Generate Prisma client + Next build

Repo

https://github.com/0xdevabir/contest

About

The competitive programming platform of Daffodil International University — exam-style C practice plus inter-university contests with NSU, AIUB, and BRAC.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages