All work
Full stack · 2023

Creative Expressions

Full stack, solo build
Creative Expressions
ReactExpressMongoDBJWT
Live Source

The problem

A course-based education platform needs two genuinely different experiences on the same data — instructors managing a roster and content, students enrolling and tracking progress — without turning into two separate apps that drift apart.

What I built

One React front end with role-aware routing and dashboards, an Express/MongoDB API behind it, and JWT-based auth that carries the user's role through every request so the same components can render differently depending on who's looking. Course CRUD, enrolment and instructor tooling all sit behind the same permission checks at the API layer, not just hidden in the UI.

Where it landed

A working platform deployed and reachable end to end, and a clean reference for how I structure role-based access when a project doesn't (yet) justify a heavier auth system.

Creative Expressions | Mohammad Shadikur Rahman