Prerequisites
- Docker & Docker Compose
- PHP 7.2+ (for running Composer/Artisan outside Docker)
- Composer
- Node.js + npm (for email template asset compilation)
Docker setup (recommended)
1
Get the environment file
The API requires a
.env file in the project root. This file is not committed to the repo.Options:- Ask a team member for the current
.env - Download from S3:
s3://tutorbloc-app/env-configurations/staging/.env - The parent
tutorbloc/directory may already have a.envyou can reference
2
Install PHP dependencies
3
Start Docker services
Default database credentials:
- Primary:
admin/secret(database:tutorbloc_db) - Test:
tester/tester_secret(database:tutorbloc_db_test)
4
Run database migrations
5
Seed initial data
database/seeds/:InitialCountryTableSeederInitialCurrencyTableSeederInitialRoleTableSeederInitialSubjectTableSeederInitialSubjectLevelTableSeederInitialExamBoardTableSeederInitialLanguageTableSeederInitialNameTitleTableSeederInitialPaymentGatewayTableSeederInitialVerificationGatewayTableSeeder
6
Compile frontend assets (optional)
Alternative: Laravel Homestead
The repo includesHomestead.yaml and Vagrantfile for Vagrant-based local development.
homestead.testapi.homestead.teststaging.api.homestead.test
Useful aliases
Thealiases file in the project root defines shell shortcuts:
Verifying setup
Once running, hithttp://localhost/api/countries — you should get a JSON response with seeded country data (no auth required).