This repository is a mirror of the original private repository for this project.
The project was made for the Laboratório de Bases de Dados e Aplicações Web course in the first semester of the third year of LEIC at FEUP (Faculty of Engineering of the University of Porto) and consisted of making a fully featured project management service, where people can create projects, manage tasks, and have discussions in a small forum, beyond many others.
The Laravel PHP framework was used to build this. For more information on the project's development you can check the wiki, more specifically, ER, EBD, EAP and PA.
This project requires a few dependencies:
sudo apt update
sudo apt install git composer php8.1 php8.1-mbstring php8.1-xml php8.1-pgsql php8.1-curl
brew install php@8.1 composer
sudo pacman -Sy
sudo pacman -S php php-pgsql composer docker docker-compose
And then enabling mbstring
pgsql
xml
and curl
extensions in /etc/php/php.ini
.
Note: If you're on Arch Linux, you will probably be using a higher version of php such as 8.2. In my experience this was fine and there were no issues, but if any problems arise, this could be a factor.
Alternatively, there is also an AUR package for php 8.1, though I have not personally tested it so I cannot vouch for its safety/functionality.
After you're done installing all dependencies, cd
into the ProjectSync directory and run:
composer update
docker compose build
docker compose up -d
php artisan clear
php artisan db:seed
php artisan serve
Notes:
clear
shouldn't be needed unless you're actively working on the routes anddb:seed
only needs to be run once.- Sending emails might not work due to expired SMTP service keys.
If emails don't work and you wish to use this functionality, you can create an account on a service such as Brevo,
which is what we used, and follow these instructions
to make the appropriate changes in
.env
.