Simple and powerful PHP framework based on MVC architecture.
Enplated MVC offers Routing including routing with parameters in the URL. Great template files based on Laravel Syntax will make development of any application easier.
Your application will be as fast as it can be. Forget long load times and angry users.
It does not use Composer, NPM or other libraries. It's entirely up to you if you decide to use them or not.
Supports MySQL, MariaDB and SQLite databases. Great JSON, XML, and CSV data generation capabilities make any API easy. Runs on all PHP versions above 5.6.
Not every framework has to be huge and do a bunch of stuff. Code should be simple, small and versatile. Big frameworks can't do that, Enplated MVC can.
The entire core of the Framework is only 72 KiB. Laravel is about 1000x larger. It would just take 3 Apollo 11 computers from 1969 to fit the entire Enplated MVC core.
Tested in PHP 5.6.40, 7.0.33, 7.1.33, 7.2.33, 7.3.32, 7.4.33, 8.0.26, 8.1.28, 8.2.19, 8.3.7.
Currently only Apache is supported, but if you achieve the same functionality of .htaccess in NGINX for example, you can use that as well.
Enplated MVC clearly doesn't offer as many features as other major frameworks. For example, Enplated MVC has very limited testing, automatic deployment and similar features.
However, large frameworks are unnecessarily complicated. Here is a comparison of similar applications written in Laravel and Enplated MVC:
Enplated MVC | Laravel | |
---|---|---|
Loading Speed | β10 ms | β200 ms |
Size | 340 KB | 49.3 MB |
Number of Files | 48 | 4589 |
Supported DB | MariaDB, MySQL, SQLite | MariaDB, MySQL, SQLite, PostgreSQL, SQL Server |
Laravel is suitable for huge projects with dozens of people working on them. Then Laravel makes sense. Enplated MVC is suitable for small to medium projects and although it doesn't offer the same features as Laravel, it is much faster, smaller and much more intuitive.
No, the entire core of Enplated MVC is written procedurally. This is mainly for speed, as OOP would make the core slower.
However, we use a lot of techniques in both the controller and the models that will make your code practically OOP code, so you'll be approaching it very similarly to OOP projects.
In future versions we want to focus on the following aspects:
On the other hand, we don't want: