Routing
The router checks with reflection that a path names a public action before anything runs.
A small PHP MVC framework built from scratch
A front controller, a URL router, a PDO data layer and plain PHP views, small enough to read in one sitting.
Maps /controller/method/params to a public controller action
app/Core/Router.php
Asks the model for data and picks a view
app/Controllers/
Runs prepared statements through the PDO wrapper
app/Models/
Plain PHP templates rendered inside one layout
app/views/
Loaded from the posts table by Post::all().
The router checks with reflection that a path names a public action before anything runs.
Every value is bound with a PDO type taken from its PHP type, never joined into SQL.
Templates are plain PHP, escaped with htmlspecialchars and rendered inside one layout.