awurth / slim-base
Slim PHP Micro-Framework skeleton
Installs: 607
Dependents: 0
Suggesters: 0
Security: 0
Stars: 69
Watchers: 7
Forks: 26
Open Issues: 1
Requires
- php: ^7.0
- awurth/slim-helpers: ^1.0
- awurth/slim-validation: ^3.0
- cartalyst/sentinel: ^2.0
- illuminate/database: ^5.4
- illuminate/events: ^5.4
- monolog/monolog: ^1.23
- respect/validation: ^1.1
- slim/csrf: ^0.8.0
- slim/flash: ^0.2.0
- slim/slim: ^3.0
- slim/twig-view: ^2.0
- symfony/console: ^3.0|^4.0
- symfony/dotenv: ^3.0|^4.0
- symfony/http-foundation: ^3.0|^4.0
Requires (Dev)
- codedungeon/phpunit-result-printer: ^0.6.1
- phpunit/phpunit: ^4.8|^5.0|^6.0
- symfony/var-dumper: ^4.1
This package is auto-updated.
Last update: 2024-11-08 18:21:07 UTC
README
This is an app skeleton for the Slim PHP Micro-Framework to get started quickly
Features
- 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 Bootstrap 4
- Webpack Encore for SASS and JS files compilation 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 wiki.
Installation
Create the project using Composer
$ composer create-project awurth/slim-base [project-name]
Setup environment variables
Copy .env
to a .env.local
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.
Download client-side libraries
$ yarn
or if you prefer to use npm
$ npm install
Webpack
This skeleton uses Webpack to manage assets. The CSS and Javascript files are located in assets/
, so you have to use Webpack after creating your project to generate the minified files in public/
, which will be ignored by Git.
Generate assets
If you just want to generate the default CSS and JS that comes with this skeleton, run the following command
$ yarn build
or
$ npm run build
If you want to run a watcher and begin coding
$ yarn watch
Setup cache files permissions
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.
Update your database schema
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