Group allocation tool for the first week of the Department of Electrical Engineering and Information Technology at the FH Aachen - University of Applied Sciences.
Clone the repository and install the dependencies:
git clone git@github.com:fsr5-fhaachen/portals.git
cd portals
npm install
composer install
Copy .env.example to .env and fill in the database credentials.
cp .env.example .env
Generate the application key:
php artisan key:generate
Run the migrations:
php artisan migrate
For development, you can use the built-in PHP server:
php artisan serve
and the vite dev server:
npm run dev
If you want to use the provided devcontainer via laravel sail you need vscode and the devcontainer extension.
if you want to setup the devcontainer without installing tools to your host system, you can use the following steps:
docker run --rm -it -v $PWD:/app bitnami/laravel -- composer install
groupadd: invalid group ID 'sail'
, add WWWGROUP=1000
and WWWUSER=1000
to your .env
file and restart the devcontainer/vendor
folder (because the step before downloaded the dependencies with the root user. this can cause permission errors later) and rerun composer install
with the "sail" user in the devcontainer.env
(in this case use DB_CONNECTION=pgsql, DB_HOST=pgsql, DB_PORT=5432
and insert your DB_USERNAME
and DB_PASSWORD
) and run npm install
, php artisan migrate:fresh --seed
and npm run dev
).To generate the typescript types for the frontend, run:
[!WARNING] The command output changed with update to Laravel 11.x. Please verify the output before using.
php artisan types:generate --namespace="App.Models" --outputDir="./resources/js/types/"
You can lint the code with the following commands:
npm run lint
./vendor/bin/pint
and try to fix the errors with:
npm run lint:fix
./vendor/bin/pint
You can run the tests with:
vendor/bin/phpunit
You can build the application with:
npm run build
This project uses laravel octane with frankenphp (roadrunner in earlier releases) as production server. You can install the server with:
This step will also ask you to download the frankenphp (roadrunner in earlier releases) binary.
php artisan octane:install
You can run the production server with: Define the worker-count and max-requests to fit your needs.
php artisan octane:start --max-requests=512 --workers=4
If you want to use docker, use the following commands:
docker build -t ghcr.io/fsr5-fhaachen/portals:latest .
docker-compose up -d
docker exec -it portals-web touch database/seeders/tutors.csv
docker exec -it portals-web php artisan migrate:fresh --seed
You can deploy the application to kubernetes using the helm chart.
See fsr5-fhaachen/charts/portals for more information.
If you want information about creating the kubernetes cluster, see deploy information.
👤 Titus Kirch (main author)
👤 Benedikt Haas (main author)
👤 Simon Ostendorf (main author)
👤 Martin Philemon Pinsdorf
👤 Vitor Macedo
👤 Patrik Schmolke
Show here to see the full list of contributors who participated in this project.
Contributions, issues and feature requests are welcome!
Feel free to check issues page.
Give a ⭐️ if this project helped you!
Copyright © 2022 fsr5-fhaachen.
This project is MIT licensed.