Back to all projects

GameCafé Manager

Code complete · hosting soon PHP OOP · MVC · MySQL

A reservation system for a gaming café — built on a hand-rolled MVC architecture with PSR-4 autoloading. No framework, on purpose.

0 frameworks — MVC built from scratch
3 developers, Agile with Jira
PSR-4 autoloading standard
GameCafé Manager
01

The problem

Build a reservation system for a gaming café — not with a framework, but from scratch. The goal was to demonstrate real understanding of how web applications work under the hood: routing, controllers, models, views — all hand-rolled.

02

What I built

A complete reservation system with session management, game catalog, statuses and filters — all riding on a custom MVC architecture with PSR-4 autoloading. The kind of project that makes you understand exactly why frameworks exist.

03

Feature walk-through

Custom MVC engine

A hand-written router maps URLs to controllers, controllers call models, models talk to MySQL, views render the output. No magic — every layer visible.

Session booking flow

Book, modify and cancel gaming sessions with live availability — the core business logic of the café, done properly.

Game catalog & filtering

Browse the café’s game library with status filters and categories, backed by a normalized MySQL schema.

Role-based views

Admins manage the café; customers book sessions. Different views, one codebase.

04

Under the hood

The MVC pattern implemented from scratch — no Laravel, no Symfony. It is the kind of project that makes you understand why frameworks exist, and what they actually do for you.

  • Router — parses URLs and maps them to controller methods
  • Controllers — validate input, call models, prepare views
  • Models — query layer over a normalized MySQL schema
  • Views — PHP templates with clean HTML output
05

What I learned

  • How MVC frameworks work under the hood
  • PHP OOP principles and PSR standards
  • Database design and normalization
  • Agile methodology and team collaboration
  • Code review practices and clean code
Back to all projects