This is a test web application, developed for educational purposes, which can notify about configured weather conditions via email or/and SMS.
- Clone the repository
- Copy
.env.exampleto.env - Set required environment variables in
.envfile:DB_HOST=mariadb DB_USERNAME=sail DB_PASSWORD=password REDIS_HOST=redis MAIL_MAILER=smtp MAIL_HOST=host.docker.internal MAIL_PORT=1025 # Next vars are optional if you're going to only run tests WEATHER_API_KEY={your weatherapi.com API key} VONAGE_KEY={your Vonage API key} VONAGE_SECRET={your Vonage API secret} VONAGE_SMS_FROM={your Vonage phone number (random)} - Install dependencies:
composer install - Run containers:
./vendor/bin/sail up -d - Execute migrations:
./vendor/bin/sail artisan migrate - Install npm dependencies:
./vendor/bin/sail npm install - Build assets:
./vendor/bin/sail npm run build - Run tests:
./vendor/bin/sail test
- Go to http://localhost:80
- Register a new user
- Create a new Skymonitor (i.e. notifications configuration)
- Run the command
./vendor/bin/sail artisan app:process-skymonitorsto process Skymonitors - Run the queue worker
./vendor/bin/sail artisan queue:work -vto process notifications