This project is built with Laravel 12, the modern and elegant PHP framework for web development.
Make sure you have the following installed:
- Docker and Docker Compose
- Proper
UID
andGID
environment variables to avoid permission issues
Before building the Docker image, it is advisable to export your operating system user ID (UID) and group ID (GID). This allows the files generated by the container to have the correct permissions on your machine and prevents them from appearing as root
property.
export UID=$(id -u)
export GID=$(id -g)
cp .env.example.dev .env
Laravel requires a unique APP_KEY
to secure encrypted data within the application, such as cookies, sessions, and other sensitive information. This key must be set in your .env
file and should be a random 32-character string encoded in base64.
php -r "echo 'APP_KEY=base64:' . base64_encode(random_bytes(32)) . PHP_EOL;" >> .env
docker compose -f docker/docker-compose.dev.yml up -d --build
This will build and start the Laravel, MySQL, Redis, and Mailhog containers.
You can see Evidentia app running on localhost:8000
Use Mailhog to inspect outgoing emails in development:
http://localhost:8025
cp .env.example.prod .env
.env
file contains sensitive information such as database credentials, API keys, and encryption secrets.
Do not leave default values in production—review and update every field accordingly.
Laravel requires a unique APP_KEY
to secure encrypted data within the application, such as cookies, sessions, and other sensitive information. This key must be set in your .env
file and should be a random 32-character string encoded in base64.
php -r "echo 'APP_KEY=base64:' . base64_encode(random_bytes(32)) . PHP_EOL;" >> .env
docker compose -f docker/docker-compose.prod.yml up -d --build
You can see Evidentia app running on localhost
or your own web domain
Remember to enter inside the evidentia_app_container
to execute the rest of the commands
docker exec -it evidentia_app_container bash
php artisan create:roles
php artisan create:committees
php artisan create:professor
./vendor/bin/pint
npx blade-formatter "resources/views/**/*.blade.php" --write