This slim3 boilerplate is made for everyone who would like to kickstart quickly a web project.
It is composed of many great packages such as:
- Eloquent
- Phinx
- Monolog
- Symfony Console
- PHPMailer
- Bootstrap 4
- JQuery
- leafo/scssphp
- matthiasmullie/minify
- vlucas/phpdotenv
composer create-project tchauviere/slim3-kickstarter <app_name>
Will download the project and install everything for you, <app_name>
is up to you.
Once packages are installed you will be prompted interactively for .env
file creation and global environment setup (assets and DB).
If you do not want to be prompted just add --no-interaction
to the composer create-project
command up above
If you don't go with interactive mode (default), please mind to do the following once your .env file is ready:
php manager asset:compile
php manager migration:run up
php manager seed:run
Start your developpement :)
php manager assets:compile [<type>] [--watch]
Will take care of converting your scss
files and minify them as well as js
files from /assets
directory
to respectively /public/css
and /public/js
directories
(no binary dependencies required).
[<type>]
(optionnal):scss
orjs
(Tell compilator to only take care ofassets/js
orassets/css
[--watch]
(optionnal): Watch specified folder and auto-compile whenever a change is made
php manager migration:create <migration_name>
Will automatically creates a new migration file to /db/migrations
from this file you can follow Phinx documentation to describe your migration.
http://docs.phinx.org/en/latest/migrations.html
<migration_name>
: Camel case migration name (eg.: Users, UsersAndRoles, ...)
php manager migration:run <direction> [-t <target>] [--dry-run]
Run your migrations UP or DOWN.
<direction>
:up
ordown
(Tell manager to execute migration or rollback them).[-t <target>]
(optionnal):<target>
is the migration timestamp, if specified only this migration will be executed up or down.[--dry-run]
(optionnal): Tell migration to be tested but not persisted to DB.
php manager seed:create <seed_name>
Will automatically creates a new seed file to /db/seeds
<seed_name>
: Camel case seed name (eg.: Users, Roles, ...)
php manager seed:run [--seed <name>]
Run your seeds files.
--seed <seed_name>
(optionnal): If specified, will only run this seed file (eg.: Users, Roles, ...)
php manager secret:generate
Will replace your secret located in .env
file automatically.
BE CAREFUL when using this if you have already users that are created.
Indeed, this secret is used to salt your Users passwords.
http://docs.phinx.org/en/latest/migrations.html
https://laravel.com/docs/5.8/eloquent
http://www.slimframework.com/docs/
Feel free to open issues, ask questions or make some pull requests !
I'm maintaining this on my spare time so give me some of yours to get back to you :)
Enjoy !