leafs/mvc

A lightweight PHP MVC framework powered by Leaf

3.8.1 2024-12-19 22:10 UTC

README





Leaf MVC

Latest Stable Version Total Downloads License

Leaf MVC is a lightweight but feature-rich MVC framework built on top of leaf php. It gives you the simplicity of Leaf and it's modules with the structure of an MVC framework. Leaf MVC is a great choice for building applications that scale without the complexity of most modern frameworks.

📦 Installation

You can install Leaf MVC with the Leaf CLI

leaf create <project-name> --mvc

Or for a more personalized installation, you can add --custom to the command

leaf create <project-name> --mvc --custom

You can also use Composer if you don't want to use the Leaf CLI, although we recommend using the CLI for a better experience:

composer create-project leafs/mvc <project-name>

Note that <project-name> is the name of the project you want to create, and that will be your folder name. You can also use . to install in the current directory.

🗂 Directory Structure

C:.
├───app
│   ├───console
│   ├───controllers
│   ├───database
│   │   ├───factories
│   │   ├───migrations
│   │   ├───schema
│   │   └───seeds
│   ├───helpers
│   ├───models
│   ├───routes
│   └───views
│       ├───css
│       └───errors
├───config
├───lib
├───public
│   └───assets
│       ├───css
│       └───img
├───storage
│   ├───app
│   │   └───public
│   ├───framework
│   │   └───views
│   └───logs
└───vendor

This directory structure is our opinionated way of organizing your MVC application. It is a blend of the best practices from different frameworks like Ruby on Rails and Laravel and some of our own experience building applications.

To run your Leaf MVC application, use

php leaf serve

Or with the Leaf CLI

leaf serve

📓 Learning Leaf MVC

  • Leaf MVC has a very easy to understand documentation which contains information on all operations in Leaf MVC.
  • Since Leaf MVC runs on Leaf, you should check out the Leaf PHP Framework documentation here.
  • You can also check out our youtube channel which has video tutorials on different topics

😇 Contributing

We are glad to have you. All contributions are welcome! To get started, familiarize yourself with our contribution guide and you'll be ready to make your first pull request 🚀.

To report a security vulnerability, you can reach out to @mychidarko or @leafphp on twitter. We will coordinate the fix and eventually commit the solution in this project.

🤩 Sponsoring Leaf

Leaf has always been open-source and free, but as the project grows, so do the challenges of maintaining and building new features. The costs—time, resources, and infrastructure—are increasing rapidly, and our small team can no longer sustain this alone.

To keep Leaf alive and thriving, we need your support now more than ever. Sponsor us on GitHub Sponsors or visit our sponsors page to explore ways you can contribute.

Your help makes all the difference—let’s keep Leaf moving forward together!

And to all our existing cash/code contributors, we love you all ❤️