work

2024 · Full-stack — API design, auth, containerisation

Library Management System

Ten-plus REST APIs modelled on real lending workflows, with authorisation enforced where it belongs.

APIs
10+ REST endpoints
Auth
JWT + RBAC
Deploy
Dockerised

the problem

Most library projects are a CRUD form over a table. The interesting part is never the CRUD — it is the things that make a system safe to run: who is allowed to do what, how that is proven on every request, and whether the whole stack comes up the same way twice.

the approach

Designed and documented 10+ REST APIs in Spring Boot over MongoDB, modelled around actual business workflows — book search, availability check, borrow, return, and overdue alerts — rather than around database tables. Security is JWT-based authentication with role-based access control enforced at the API layer, not hidden in the client. The entire stack is containerised with Docker so local and production deployments are structurally identical.

the result

An authorisation model that is explicit and testable, and an environment a new contributor gets from one command instead of a setup document.

stack

  • Java
  • Spring Boot
  • React
  • MongoDB
  • Docker
  • JWT