droidevs / php-mvc-core
Installs: 1
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/droidevs/php-mvc-core
This package is not auto-updated.
Last update: 2025-10-12 20:55:29 UTC
README
A lightweight PHP MVC core / micro-framework for learning and building custom web apps.
Table of Contents
- Features
- Architecture
- Installation
- Usage
- Directory Structure
- Configuration
- Extending & Customization
- Contributing
- License
Features
- Simple routing (HTTP GET/POST)
- Controllers, Views, Models
- Request / Response abstraction
- Session & flash messaging
- Middleware support
- Basic form validation & exception handling
Architecture / Concepts
Follows MVC pattern:
- Model handles data and business logic
- View renders presentation
- Controller processes requests, interacts with models, returns responses
- Router maps URL paths to controller actions
- Middleware allows pre-/post-processing
Installation
git clone https://github.com/thecodeholic/tc-php-mvc-core.git
cd tc-php-mvc-core
composer install
Point your server’s document root to public
(or route all requests to index.php
). Use:
php -S localhost:8000 -t public
Usage
- Define routes
- Create controller classes extending
Controller
- Create view templates in
views/
- Create models extending
Model
- Visit endpoints in browser
Directory Structure
/db
/exception
/form
/middlewares
/public
/views
/controllers
/models
Application.php
Controller.php
Model.php
Request.php
Response.php
Router.php
Session.php
View.php
composer.json
README.md
Configuration
Configure:
- Database
- Base URL / routing
- Error handling
- Middleware registration
- Autoloading
Extending & Customization
You can build on the core by adding:
- ORM enhancements
- Dependency injection / service container
- Advanced routing features
- More middleware (auth, CSRF, caching)
- Error & exception handling
Contributing
Contributions are welcome! Please open issues or PRs. Follow code style, document changes, and test where possible.
License
MIT License — see LICENSE