Skip to content
Back to projects

BookHaven — Full-Stack Bookstore Web Application

A completed university capstone project built with PHP and MySQL. Developed database-driven bookstore functionality, relational data storage, checkout flow, order tables, order processing pages, generated order numbers, and responsive interface behavior.

PHP MySQL HTML CSS
Screenshot of BookHaven — Full-Stack Bookstore Web Application

The Problem

The capstone called for a database-driven web application that demonstrated end-to-end application and database development — not just static pages, but real persistent data and a working transaction flow. I chose to build a bookstore, because it maps cleanly onto the classic patterns of relational data and order processing.

My Approach

I designed and built the application with PHP on the back end and MySQL for persistence, with HTML and CSS for the interface. The core was a normalized relational schema supporting bookstore operations: books, customers, orders, and order line items. I built the checkout workflow end to end, including order tables, order processing pages, and generated order numbers, so a completed order writes coherent records across related tables.

What I Built

Database-driven storefront — Books and catalog data served from a MySQL database rather than hard-coded markup, with persistent relational storage.

Checkout & order processing — A complete order flow with order tables, order processing pages, and generated order numbers that tie a customer to their purchased items.

Responsive interface behavior — Debugged and refined the interface across desktop and mobile layouts so the app behaved consistently at different screen sizes.

What I Learned

This project completed my Information Science & Technology capstone and crystallized how application code and a relational schema have to be designed together. Modeling the order flow correctly — from cart to order header to line items — taught me more about data integrity and foreign-key relationships than any single-page demo could.