← All projects

Case study

UniLMS

University learning management system covering course delivery, assignments, assessments, and student progress tracking.

Role
Full-Stack Developer
Year
2024
Status
Live
Stack
Next.js · TypeScript · Prisma
UniLMS interface

Overview

A learning management system built around the way a university term actually runs: courses, enrolment, assignments with deadlines, assessments, and progress visible to both students and staff.

What it does

  1. 01

    Course delivery with structured modules and materials

  2. 02

    Assignment submission with deadline handling

  3. 03

    Assessments and automatic grade rollup

  4. 04

    Separate student and lecturer views over the same data

The hard part

Access control. Every query needed to answer 'who is asking' before 'what did they ask for', which pushed the permission checks down into the data layer rather than the UI.

What it taught me

Model permissions once, at the boundary. Scattering role checks through components is how data leaks.