Slim 3 application skeleton Teamwork Dashboard - With a bit of VueJS and ES6 compilation using Babel - Modified by me, JacksonWebDev
This is an app skeleton for the Slim PHP Micro-Framework to get started quickly
- Eloquent ORM
- Flash messages (Slim Flash)
- CSRF protection (Slim Csrf) with fields rendering with a twig function
- Authentication (Sentinel)
- Validation (Respect + Slim Validation)
- Twig templating engine Slim Twig View with cache and debug
- CSS Framework Semantic UI
- A Gulpfile with a watcher for SASS and JS files, and minification
- Helpers for assets management, redirections, ...
- Logs (Monolog)
- Dotenv configuration
- Console commands for updating the database schema or creating users
- Functionnal tests base (PHPUnit)
For more information, check out the project's website or the wiki.
$ composer create-project awurth/slim-base [project-name]
Copy .env.dist
to a .env
file and change the values to your needs. This file is ignored by Git so all developers working on the project can have their own configuration.
$ npm install
This will install Gulp dependencies and Semantic UI in public/assets/lib/semantic/
.
This skeleton uses Gulp to manage assets. The CSS and Javascript files are located in assets/
, so you have to use Gulp after creating your project to generate the minified files in public/
, which will be ignored by Git.
You can install Gulp globally on your system with the following command if you haven't done it yet
$ npm install -g gulp-cli
If you just want to generate the default CSS and JS that comes with this skeleton, run the following command
$ gulp build
If you want to run a watcher and begin coding, just run
$ gulp
The skeleton uses a cache system for Twig templates and the Monolog library for logging, so you have to make sure that PHP has write permissions on the var/cache/
and var/log/
directories.
First, create a database with the name you set in the .env
file. Then you can create the tables by running this command:
$ php bin/console db