How fauzan1892/php-mvc-codekop works
Codekop PHP MVC is a lightweight PHP web/API framework. Its documented request path is browser or API client → front controller → configuration and routes → dispatcher/middleware → controller → view or JSON response, with optional database/model work. A separate queue capability dispatches jobs through configurable file or database drivers and supports CLI workers, retries, and backoff. The README supplies the high-level flow; source excerpts clarify dispatch, routing, sessions, and queue ownership. Some capabilities are documented but their implementation was not sampled, so those links are omitted or marked unverified.
Main entry points: App.php Dispatcher · Controller.php Base controller · index.php Front controller · QueueManager.php Queue manager
Components 29
HTTP entry
- Front controller
index.php - App configuration
app/Config/Config.php - Route aggregator
app/Config/Routes.php - Web routes
app/Routes/web.php - API routes
app/Routes/api.php
Request runtime
- Dispatcher
system/Core/App.php - HTTP router
system/Core/Route.php - Middleware resolution
system/Core/Route.php - Request parsing
system/Core/Request.php - HTTP responses
system/Core/Response.php - Base controller
system/Core/Controller.php - Session manager
system/Core/Session.php - CSRF security
system/Core/Security.php - View loader
system/Core/Views.php - PDO database
system/Database.php
Application features
- Home controller
app/Controllers/Home.php - API controller
app/Controllers/Api.php - PHP views
app/Views - Models / CRUD
system/Core/Models.php - JWT middleware
app/Middleware/JwtMiddleware.php
Background jobs
- Queue API
system/Queue/Queue.php - Queue manager
system/Queue/QueueManager.php - Application jobs
app/Jobs - File queue driver
system/Queue/FileQueueDriver.php - Database queue driver
system/Queue/DatabaseQueueDriver.php - Queue driver contract
system/Queue/Contracts/QueueDriver.php - Queue storage
storage/queue - CLI worker
system/console.php
Other components
- Browser / API client
Connections 33
- Browser / API client → Front controller: sends request
- Front controller → App configuration: loads configuration
- Front controller → Route aggregator: loads routes
- Route aggregator → Web routes: requires routes
app/Config/Routes.php - Route aggregator → API routes: requires routes
app/Config/Routes.php - Front controller → Dispatcher: starts runtime
- Dispatcher → Request parsing: reads request
system/Core/App.php - Dispatcher → HTTP router: matches route
system/Core/App.php - Dispatcher → Middleware resolution: checks access
system/Core/App.php - HTTP router → Middleware resolution: resolves middleware
system/Core/Route.php - Dispatcher → Home controller: dispatches controller
system/Core/App.php - Dispatcher → API controller: dispatches controller
- Dispatcher → HTTP responses: sends result
system/Core/App.php - Home controller → Base controller: extends
app/Controllers/Home.php - API controller → Base controller: extends
app/Controllers/Api.php - Base controller → Session manager: starts session
system/Core/Controller.php - Base controller → PDO database: opens connection
system/Core/Controller.php - Base controller → View loader: creates loader
system/Core/Controller.php - View loader → PHP views: loads templates
app/Views/tes_view.php - Home controller → View loader: renders view
app/Controllers/Home.php - Base controller → Models / CRUD: loads models
system/Core/Controller.php - Models / CRUD → PDO database: uses PDO
- Base controller → CSRF security: provides security
system/Core/Controller.php - Middleware resolution → JWT middleware: resolves class
system/Core/Route.php - Queue API → Queue manager: dispatches work
system/Queue/Queue.php - CLI worker → Queue API: runs worker
system/console.php - Queue manager → Application jobs: hydrates and runs
- Queue manager → File queue driver: selects driver
system/Queue/QueueManager.php - Queue manager → Database queue driver: selects driver
system/Queue/QueueManager.php - File queue driver → Queue driver contract: implements
system/Queue/FileQueueDriver.php - Database queue driver → Queue driver contract: implements
system/Queue/DatabaseQueueDriver.php - File queue driver → Queue storage: stores payloads
- Database queue driver → PDO database: uses PDO
system/Queue/DatabaseQueueDriver.php