Panday is an HMVC-capable PHP framework built with modern PHP 8.2+ best practices, designed to feel familiar to developers who love the productivity of Laravel and the simplicity/structure of CodeIgniter 4—but with a modular architecture that scales cleanly for real-world business apps.
The name “Panday” comes from the Filipino word for craftsman / builder—a perfect fit for a framework focused on building maintainable systems with strong foundations.
Build a framework that is:
- Modular by default (HMVC) — apps are composed of feature modules, not messy folders
- Simple to reason about — clear conventions, clean file structure, minimal magic
- Enterprise-ready — built-in middleware, guards, jobs, migrations, tests, logging
- Modern PHP-first — strict types, PSR-4 autoloading, DI container, clean HTTP kernel
- Developer-friendly — predictable, well-documented, easy to extend
Each module can have its own:
- Controllers
- Models
- Views
- Config
- Routes
- Lang
- Migrations
- Services
- Middleware / Guards
- Hooks / Events
- Jobs
- Tests
- Traits
- Routing (
web.php,api.php) - Controllers, Models, Views
- Service container / dependency injection
- Middleware pipeline
- Guards / authentication layer
- Event dispatcher + hooks system
- Background jobs & queue driver abstraction
- Database layer + migrations + seeders
- Config loader, environment support
- Localization (
Lang) - Testing harness (PHPUnit)
- CLI tooling (later:
pandayconsole)
Panday uses a clean split between app and framework:
panday/
├─ app/ # Your application code (HMVC-ready)
├─ bootstrap/ # App bootstrapping
├─ config/ # Global configuration
├─ database/ # Database-related files (seeders later)
├─ framework/ # Panday core framework
├─ public/ # Public entry point (index.php)
├─ resources/ # Assets, templates, etc.
├─ routes/ # Route definitions (web/api/modules)
└─ storage/ # Logs, cache, temp files
app/
├─ Config/
├─ Guards/
├─ Hooks/
├─ Http/
│ ├─ Controllers/
│ └─ Middleware/
├─ Jobs/
├─ Lang/
├─ Migrations/
├─ Models/
├─ Modules/
├─ Services/
├─ Traits/
├─ Views/
└─ Tests/
This contains the internal engine that powers Panday:
- Core Application + Container
- HTTP Kernel, Request/Response
- Support utilities
- PHP 8.2+
- Composer 2+
composer install
cp .env.example .env
composer dump-autoloadphp -S localhost:8000 -t publicThen open:
http://localhost:8000
You should see the Panday welcome page.
composer test(Tests will expand as we build out the routing, modules, DB, and services.)
- Front controller (
public/index.php) - App bootstrap (
bootstrap/app.php) - Basic container
- HTTP kernel + request/response
- Router + route groups
- Controller dispatcher
- View engine
- Error handling (404/500)
- Module discovery
- Module routes
- Module config & lang
- Module views & overrides
- Module migrations
- Middleware pipeline
- Guards (session/token)
- CSRF + secure headers
- Rate limiting (optional)
- Database manager
- Migration runner
- Seeders
- ORM-lite or query builder (TBD)
- Event dispatcher
- Hook system
- Job queue abstraction
- Worker CLI
- CLI:
php panday ... - Scaffolding generators
- Documentation site
Panday follows a few guiding principles:
- Convention over complexity — predictable code > clever magic
- Modular architecture — scale by adding modules, not refactoring everything
- Readable first — future maintainers should understand it fast
- Secure by default — safe patterns built into the framework
- Modern PHP standards — strict types, PSR-4, clean abstractions
Copyright © BytesCrafter IT Solutions.
All rights reserved.
This project is currently in active development as a guided build.
Contribution rules and coding standards will be added once the core architecture is finalized.