Skip to content

P/N 07Case studyEpoka University, Web Technologies course

Eternal Library marketplace on a laptop, with book categories and book cards, in front of dim library shelves

Library Management System

A web system for running a library, with a book marketplace and ordering, book and stock management, and a client-facing site. I led the team and built several core modules.

Role
Team leader and developer
Team
Course team
Duration
One semester
Year
2024
Stack
PHP · MySQL · JavaScript · HTML · CSS · SCSS

Outcomes

  • 3

    Core modules I built: marketplace and orders, stock, client site

  • Lead

    Team leader for planning and delivery

Problem

Libraries that track books, stock and orders by hand lose time and make mistakes, and readers have no easy way to browse or order online.

Constraints

A course timeline, a student team and a classic web stack without frameworks: HTML, SCSS and JavaScript on the frontend, PHP and MySQL on the backend.

Architecture

A PHP backend over a MySQL database serves two sides: staff pages for book and stock management, and a client-facing site with a marketplace and ordering flow.

PHP and MySQL backend serving the staff management pages and the client marketplace.

4 parts, 3 connections.

  • N01 — Staff pages
  • N02 — Client marketplace
  • N03 — PHP backend
  • N04 — MySQL
  • Staff pages to PHP backend
  • Client marketplace to PHP backend
  • PHP backend to MySQL

Key decisions

Separate staff and client experiences so each stays simple for its users.

Keep stock and orders in one consistent database model, so an order immediately updates availability.

Staff stock management table with ISBN, genres, format, inventory and a Restock action, low-stock rows highlighted
Stock management for staff, with low stock highlighted and a restock action.

Results

Delivered a working library system covering marketplace, ordering, stock management and the client site. I led the team and built the marketplace and ordering system, book and stock management, and the client-facing page.

Cart page with the selected book, quantity controls, cart total and Proceed To Checkout
The cart: adjust quantities and proceed to checkout.
Book detail page showing Stock Available, price, quantity, Add To Cart and the book's description
Availability on the book page comes straight from stock.
Staff order management list with customer, books, total, a status selector and date for each order
Staff review every order and set its status.

Reflection

Today I would build it as a REST API with a separate frontend. I would keep the clear split between staff and client experiences.