Madison College coursework, Fall 2025.
Tasks, Served as an API
The problem
Managing tasks needed a backend that other clients could call, not just a single web page: task data served as JSON over HTTP, with access limited to known users.
The approach
I built the API in PHP using object-oriented code and PDO prepared statements. A service layer dispatches on the HTTP method, a task manager implements a task interface so the HTTP layer stays separate from the task logic, and a user manager validates the username and password on every request.
What I built
GET returns one task or all tasks as JSON, POST creates a task, PUT updates a task, and DELETE removes a task. Every action (create, read, read all, update, delete) is logged to a task log table, and a statistics page shows per-user counts of each action from a grouped query. A simple form creates users. There is no front-end task interface: the API is used over HTTP and the statistics are shown in a plain table. This was coursework, so it is presented as a learning project, not as production-ready code.