/HumanaEthica-ES

Project for 2023/2024 - Software Engineering @ IST

Primary LanguageGroovyMIT LicenseMIT

Humana Ética

AboutTechnologiesInstallationContributingLicense

⚠️⚠️⚠️ WARNING: This is a snapshot of the real repository, which is private on GitLab.

Screenshots of issues and merge requests are available in ISSUE_BOARDS.png and MERGE_REQUESTS.png respectively.

Project sub-groups can be seen in the P1.md and P2.md files.

About

HumanaEthica is an open-source broker that aims to connect charities and non-profit organizations with volunteers.

Technologies

Bare Metal Installation

  • Install
sudo apt update && sudo apt upgrade
sudo apt install openjdk-17-jdk postgresql
  • Start db, change to postgres user and create DB
sudo service postgresql start
sudo su -l postgres
dropdb hedb
createdb hedb
  • Create user to access db
psql hedb
CREATE USER your-username WITH SUPERUSER LOGIN PASSWORD 'yourpassword';
\q
exit
  • Rename backend/src/main/resources/application-dev.properties.example to application-dev.properties and fill its fields
  • Run server
cd backend
mvn clean spring-boot:run
cd frontend
npm i
npm start

The following video shows how setup when you install the software in your machine. Requires the software mentioned above.

Watch the video

Docker Compose Installation

  • Install Docker in you machine.

  • Copy data/access.log.example to data/access.log

cp data/access.log.example data/access.log
  • Copy data/access.log.example to data/access.log
cp data/error.log.example data/error.log
  • Build HumanaEthica in project top directory, where docker-compose.yml is
docker-compose build
  • Run HumanaEthica
docker-compose up frontend
  • Shutdown HumanaEthica
docker-compose down

Development Container

An easy way to obtain a working development environment is to use the development container provided (see folder .devcontainer). This requires Docker.

The following video shows how to setup the dev container using IDE IntelliJ IDEA (Ultimate Edition).

How to setup HumanaEthica in IntelliJ using a dev container

Contributing

Your contributions are always welcome!

License

This project is licensed under the MIT License - see the LICENSE file for details.