Project for the Web Programming & Digital Services course, held at Università degli Studi di Brescia (Italy). You can see the project in action in two separate videos:
- End-User Perspective: the end-user can search for setups, filter them based on various criteria (car, category, location, weather...), and view their details. If the user is logged in, they can also create and share their own setups. [Youtube]
- Admin Perspective: the administrator can manage users, and all aspects of the application (available cars and locations, categories, manufacturers, and their associated images). [Youtube]
First of all, you need to make a copy of the file .env.example in the project root folder, and rename it as .env. This also need to be done with the .env.example file within the src folder.
Remember to set all appropriate environment variables, if needed.
For the first launch of the program, you must execute the following command. This creates all the containers necessary to run the application.
docker compose up --buildAfter that completes, run the following to install and compile the dependencies for the application:
docker compose run --rm composer install
docker compose run --rm npm install
docker compose run --rm npm run buildThen, you need to create a symbolic link from source directory storage/app/public to target directory public/storage. This enables all files within the target directory to be accessible from the web. To do so, type:
docker compose run --rm artisan storage:linkFinally, launch all application containers, and run the necessary migrations and seeders:
docker compose up
docker compose run --rm artisan migrate
docker compose run --rm artisan db:seedFor all subsequent launches, you just need to execute:
docker compose upWhen you are finished, you can close the application (and destroy all containers) by using:
docker compose downYou can access the application through http://localhost:8080/.


