JESA (J'pura Employability Skills Awards) celebrates undergraduate achievement at the University of Sri Jayewardenepura. The Career Skills Development Society organizes the awards, with selected categories also open to other state universities.
This repository contains the public awards website, the 2026 application form, and the administration interface. Visit jesa.lk.
Use Node 24 and Bun 1.3.10, as recorded in .nvmrc and package.json.
git clone https://github.com/University-Of-Sri-Jayewardenepura/JESA.git
cd JESA
bun install --frozen-lockfile
cp .env.example .env.local
bun run devOpen localhost:3000. Obtain development credentials from a
maintainer for backend features and keep environment files private. Bun is the
package manager; commit bun.lock rather than a second lockfile.
| Command | Purpose |
|---|---|
bun run dev |
Start Next.js with Turbopack |
bun run build |
Create and type-check a production build |
bun run start |
Serve the production build |
bun run lint / bun run check |
Run the installed Biome checks |
bun run fix <path> |
Apply Biome fixes to selected files |
bun run typecheck |
Check TypeScript without emitting files |
bun run test:unit |
Run colocated Bun unit tests |
bun run knip |
Identify unused files, exports, and packages |
bun run test:e2e |
Run Playwright tests using an isolated test backend |
Some browser tests submit applications. See CONTRIBUTING.md before running them or any legacy data command.
- CONTRIBUTING.md: setup, checks, dependency updates, and pull requests.
- DESIGN.md: route structure, data boundaries, and visual conventions.
- AGENTS.md: working instructions for coding agents.
- JESA maintenance skill: dependency and dead-code review.
Public routes live in app/(site)/, admin pages in app/(admin)/, shared UI in
components/, and maintained content in constants/. The current application and
admin flows use the existing Firebase integration. Legacy registration and lookup
routes still use MongoDB, so Mongoose and its sequence plugin remain required.
The /register landing page currently announces registration closure; the 2026
form remains at /register/2026. General maintenance preserves that behavior.
Next.js and React,
TypeScript,
Tailwind CSS,
Radix UI / shadcn/ui,
Motion, Lucide, and
Zod. See package.json and bun.lock for exact versions.
Quality tooling uses Biome, Knip, Bun tests, and Playwright.
Created by Pruthivi Thejan and maintained by the JESA community. See LICENSE.md.