https://github.com/correlaid/engage-2
https://github.com/correlaid/engage-2
Last synced: 9 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/correlaid/engage-2
- Owner: CorrelAid
- License: mit
- Created: 2021-10-03T13:05:49.000Z (almost 5 years ago)
- Default Branch: development
- Last Pushed: 2023-11-01T13:45:39.000Z (over 2 years ago)
- Last Synced: 2023-11-02T11:39:20.662Z (over 2 years ago)
- Language: TypeScript
- Size: 680 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# CorrelAid Engage
CorrelAid engage is a tool intended to help with the management of projects that
are often done with partner organizations. The tools aims to help with the
organization of the whole project life cycle. It is currently
in development and not yet ready for production use.
The main entities in the system tracks are:
- Projects
- Partner organizations
- Project members
In addition the tool aims to offer two different levels of access:
- Admins: Can create and edit all entities
- Team Admins: Can create and edit all entities for their team
## Project structure
The project is split into a frontend and a backend. The frontend is a Vue.js app and the backend is a python app using FastAPI. Storage is done in a Postgres database.
To see how to setup the development environment for the frontend and backend see the respective READMEs in the `frontend` and `backend` folders.
## Selected Makefile commands
In this section we only aim to provide a short overview of the most important commands. For a full list of commands see the `Makefile`.
- `make up`: Starts the backend development environment in docker
## Dev Deployment
To make a dev deployment of the backend you need to
1. Log into the dev server instance
1. Clone the repository
1. Go to the project folder and checkout the branch you want to deploy
1. Make a copy of the `.env` file
cp .env .env.dev
1. Update the `.env` file with the desired values. Additionally the following
variables for the database need need to be set:
POSTGRES_USER=
POSTGRES_DB=
POSTGRES_PASSWORD=
Their values have to be the same as the ones set for the `ENAGE_BACKEND_DATABASE`
environment variables in the same file.
1. Set up caddy
TBD
1. Run the following make command.
make build-and-start-dev-frontend-backend
make start-dev-database
This will build and start the frontend and backend containers. The backend will run on port `8000` and the frontend on port `8080`.
1. To apply migrations and create database users execute the following commands inside he backend container.
python -m alembic upgrade head
python cli.py adduser
Or equivalently outside of a container
docker exec engage-api python -m alembic upgrade head
docker exec engage-api run python cli.py adduser