New project: Building a naked PHP skeleton / boilerplate application from scratch
[This post is from November 2013. In the meantime (I’m writing this in November 2014) the project has changed its name and the idea behind. You can find the new script, called MINI, here on Github or on www.php-mini.com]
I’ve just pushed the first commits of my new project to Github. Beware: What you see is only a few days old. The final release will be in 2014.
https://github.com/panique/php-mvc/
This repo aims to be an extremely reduced, extremely easy to understand and as-easy-as-possible-to-setup naked PHP application. You might ask: “Well, there are hundreds of frameworks, why do we need this ?”. Good question. But the thing is, most frameworks are frameworks, full of features, full of highly complex code, full of files. This project is not a framework, it’s just a barebone application, something like a naked structure to start with.
Basic views, a basic model and basic controllers are already integrated. There’s demo data, pretty URL rewriting, controller/action behaviour, clean PDO handling, a clean config and an extremely simple index.php ! Application logic and public files (css, js, images) are seperated. The idea of going on with Composer is also there, we have a “vendor” folder and an autoloader for Composer dependencies (totally optional, sure).
“How do I build an application ?”
One of the biggest question in the PHP world is “How do I build an application ?”. It’s hard to find a good base, a good file structure and useful information on that, but at the same time there are masses of frameworks that might be really good, but hard to understand, hard to use and extremely complex. This project tries to be some kind of naked skeleton bare-bone for quick application building, especially for beginners and not-so-advanced coder (like me) who just want to get things started rather than reading deeply into framework documentations.
Goals of this project
- giving beginners (?) a useful tool to create PHP apps without messing things up
- promote PSR 1/2 coding guidelines
- promote usage of PDO
- promote the usage of Composer, in exactly the way it should be used
- make people use a more or less clean folder/file structure
- promote developing with max. error reporting
What you can do
Feel free to have a look, watch or fork this, create issue tickets and improve things if you like. And please keep in mind: This is not a framework!