multIMedia interface: Presentation – Analysis – CommenT
A Laravel 11 app with react components.
A working Docker installation is mandatory.
Please make sure to copy & rename the example.env file to .env.
cp dev/example.env dev/.env
You can replace the values if needed, but the default ones should work.
Edit hosts file to point impact.lan to your docker host.
Run the following docker commands from the project root directory.
Build & run all the containers for this project.
docker-compose up
Run the setup script separately. The laravel-worker process will not work until the setup script is applied.
docker exec impact-app ./setup.sh
This is only needed when you launch the project for the first time. After that you can simply use the following command from the project root directory.
docker-compose up -d
To access the main application please use the following link.
- admin-user@example.com / password
To access the debug tool please use the following link.
http://impact.lan:8787/telescope
To access the database please use the following link.
- Server: impact-mysql
- Username: user
- Password: password
To access mails please use the following link.
Or to get the messages in JSON format.
http://impact.lan:8026/api/v2/messages
In this project the assets are pre-compiled before deployment.
During development docker exec impact-app npm run dev
or docker exec impact-app npm run watch
should be used. When everything is ready to be pushed to the repository docker exec impact-app npm run prod
should be used to compile assets for production.
All PHP files will be inspected during CI for code style issues. If you want to make a dry run beforehand, use the following command.
docker exec impact-app ./vendor/bin/pint --test
And if you want to automatically fix the issues.
docker exec impact-app ./vendor/bin/pint
To run the full suite:
docker exec -it impact-app php artisan test
To run the full suite:
docker exec -it impact-app php artisan dusk --env=testing
To run a specific test class:
docker exec -it impact-app php artisan dusk tests/Browser/MyTest.php --env=testing
To view the integration tests running in the browser, go to http://impact.lan:4444, click on Sessions, you should see a line corresponding to the running tests and a camera icon next to it, click on it to open a VNC viewer.