tchauviere / slim3-kickstarter
Slim3 web app starter kit, trying to follow KISS principle and make your dev life easier.
Installs: 32
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 2
Forks: 0
Open Issues: 2
Language:SCSS
Type:project
Requires
- illuminate/database: ^5.8.15
- leafo/scssphp: ^0.7.7
- matthiasmullie/minify: ^1.3.61
- monolog/monolog: ^1.24.0
- phpmailer/phpmailer: ^6.0
- robmorgan/phinx: ^0.10.7
- slim/flash: ^0.4.0
- slim/slim: ^3.12.1
- slim/twig-view: ^2.5.0
- symfony/console: ^4.2.8
- symfony/translation: ^4.2.8
- symfony/twig-bridge: ^4.2.8
- twig/extensions: ^1.5.4
- vlucas/phpdotenv: ^3.3
Requires (Dev)
- phpunit/phpunit: >=7.0 < 8.0
This package is auto-updated.
Last update: 2024-11-12 18:12:14 UTC
README
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
Installation :
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 :)
Guide :
Assets management
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
Migration creation
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, ...)
Migration running
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.
Seed creation
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, ...)
Seed running
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, ...)
Secret generation
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.
Usefull links :
http://docs.phinx.org/en/latest/migrations.html
https://laravel.com/docs/5.8/eloquent
http://www.slimframework.com/docs/
Note :
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 !