- PHP >= 8.0
- Laravel >= 8.0
- SQLite database
- Docker
- Docker-compose
This challenge does not require any additional library. DO NOT MODIFY the composer.json or composer.lock file as that may result in a test failure. The project already contain a sample SQLite database at /database/database.sqlite. Please don´t change the database structure by creating a seed or migration file because this may also result in a test failure.
- Run an instance of terminal (Git bash, PowerShell, windows terminal, etc.) & clone repository with HTTPS
git clone https://github.com/mdnurulmomen/teamify.git
Please install Docker Desktop first. Docker requires high memory to run smoothly. Please close unnecessary applications from taskbar if you have less than or equal to 8 GB Ram
- Navigate to project directory and build docker YML file using docker compose
cd teamify
docker-compose build
Please wait until docker completes build process
- Mount docker containers
docker-compose up
if you see I/O timeout error, please restart docker desktop and run above command again
- Run another instance of terminal & navigate to docker app
docker-compose exec app bash
- Update composer
composer update
composer dump-autoload
- While in docker app, create .env file and copy contents of .env.example to .env file
touch .env
if touch command is not supportted in your terminal, create .env file manually
cp .env.example .env
if cp command is not supportted in your terminal, copy contents of .env.example to .env file manually
- Generate application key
php artisan key:generate
-
Update database and password in .env file
-
Complete migration and seeding steps using below commands:-
php artisan migrate
php artisan db:seed
- Create personal access and password grant clients
php artisan passport:install --force
Project setup is complete. You can authenticate and test API’s now.
see docker-compose.local.yml
See more contributions.