The problem
Prospective tenants had no single, structured place to search verified rental listings — informal channels made it hard to trust what was actually available. The project set out to build a proper system: listings, search, and a backend that could hold up under real data.
Decisions that mattered
Normalized MySQL schema from day one
Rather than a flat, quick-and-dirty table structure, the data model was normalized early — listings, landlords, and tenant accounts as distinct, related entities — so the system could grow without a rewrite.
REST API as a hard boundary
Client and server were split cleanly behind a REST API, rather than mixing server-rendered logic into the frontend — keeping the two sides independently testable and replaceable.
The outcome
Delivered as a complete, working full-stack system for the final project submission — covering listings, search, and account management end to end.