DotKernel's PSR-15 API built around the Mezzio API skeleton based on Enrico Zimuel's Zend Expressive API skeleton example.
Using your terminal, navigate inside the directory you want to download the project files into. Make sure that the directory is empty before proceeding to the download process. Once there, run the following command:
git clone https://github.com/dotkernel/api.git .composer installDuring the installation process you will be prompted:
Please select which config file you wish to inject 'Laminas\*\ConfigProvider' into:
[0] Do not inject
[1] config/config.php
Make your selection (default is 1):Please enter 0 because the application has an injected ConfigProvider which already contains the prompted configurations.
Next, you will be prompted: Remember this option for other packages of the same type? (Y/n)
Please hit Enter to accept the default option, which will also leave other packages' ConfigProviders not injected.
If you're installing the project for development, make sure you have development mode enabled, by running:
composer development-enableYou can disable development mode by running:
composer development-disableYou can check if you have development mode enabled by running:
composer development-status- duplicate
config/autoload/cors.local.php.distasconfig/autoload/cors.local.php<- if your API will be consumed by another application, make sure configure theallowed_origins - duplicate
config/autoload/local.php.distasconfig/autoload/local.php - duplicate
config/autoload/mail.local.php.distasconfig/autoload/mail.local.php<- if your API will send emails, make sure you fill in SMTP connection params
Optional:
- duplicate
phpcs.xml.distasphpcs.xml - duplicate
phpunit.xml.distasphpunit.xml
- create a new MySQL database - set collation to
utf8mb4_general_ci - fill out the database connection params in
config/autoload/local.phpunder$databases['default'] - run the database migrations by using the following command:
php vendor/bin/doctrine-migrations migrateThis command will prompt you to confirm that you want to run it:
WARNING! You are about to execute a migration in database "..." that could result in schema changes and data loss. Are you sure you wish to continue? (yes/no) [yes]:Hit Enter to confirm the operation.
Fixtures are used to seed the database with initial values and should be executed after migrating the database.
To list all the fixtures, run:
php bin/doctrine fixtures:listThis will output all the fixtures in the order of execution.
To execute all fixtures, run:
php bin/doctrine fixtures:executeTo execute a specific fixture, run:
php bin/doctrine fixtures:execute --class=FixtureClassNameMore details on how fixtures work can be found here: https://github.com/dotkernel/dot-data-fixtures#creating-fixtures
php -S 0.0.0.0:8080 -t publicSending a GET request to the home page should output the following message:
{
"message": "Welcome to DotKernel API!"
}You can access the Mezzio's CLI by using the following command:
php vendor/bin/mezzioYou can access the Laminas' CLI by using the following command:
php vendor/bin/laminasYou can access Doctrine's CLI by using the following command:
php vendor/bin/doctrineYou can access DBAL CLI by using the following command:
php vendor/bin/doctrine-dbalYou can access Doctrine's migration tools by using the following command:
php vendor/bin/doctrine-migrationsYou can access app-specific commands by using the following command:
php bin/cli.php