Skip to content

This note-taking application features a hybrid routing structure that seamlessly supports both traditional MVC-style controller actions and direct file-based route handlers. Built with HTML, PHP, JavaScript, and Tailwind CSS, the project emphasizes a clear and scalable project structure over the app type itself. Additionally, the app is dockerized.

Notifications You must be signed in to change notification settings

redox132/phpFramework

Repository files navigation

About

This is a simple note app built with PHP and MySQL, structured as an MVC framework inspired by Laravel. While the app’s core functionality is straightforward, the focus is on the project structure as a solid foundation for building a PHP MVC framework.

The architecture is 100% object-oriented, featuring a Router that directs each request to its dedicated controller and view. It supports all common HTTP methods (GET, POST, DELETE, PATCH, PUT) and includes middleware for authentication.

The project uses a hybrid routing system, blending MVC-style controllers with file-based route handlers, providing flexibility and scalability.

The entire app is fully dockerized, ensuring it can run consistently across any environment.

Setup

.env    Remember to add your .env file (not included for security reasons)

Composer: make sure composer is installed locally. The vendor/ folder is ignored for version control. To install dependencies, run the following commands:
  • ~$ composer init # If composer.json doesn’t exist
  • ~$ composer install # To install dependencies and autoloading
  • ~$ composer require vlucas/phpdotenv # For loading .env files

About

This note-taking application features a hybrid routing structure that seamlessly supports both traditional MVC-style controller actions and direct file-based route handlers. Built with HTML, PHP, JavaScript, and Tailwind CSS, the project emphasizes a clear and scalable project structure over the app type itself. Additionally, the app is dockerized.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published