- Only the project creator can add or remove members.
- Tasks can only be created by members of the project to which the task belongs.
- A user can only be added to a project if they are already registered on the platform.
- Completed tasks cannot be edited.
- Tasks must have tags
- Node.js with TypeScript
- PostgreSQL
- Prism ORM
- ID: Automatically generated ID.
- Name: Text.
- Email: Text, unique.
- Password: Text, encrypted.
- ID: Automatically generated ID.
- Name: Text.
- Description: Text.
- Members: List of users associated with the project.
- ID: Automatically generated ID.
- Title: Text, maximum 255 characters.
- Description: Text.
- Creation date: Date and time, automatically generated.
- Status: Enum (Pending, In progress, Completed).
- Project: Reference to the project to which it belongs.
- ID: Automatically generated ID.
- Title: Text.
- Task: Reference to the task to which it belongs.
- Have docker and docker-compose installed.
- Create a .env file in the project root with the following variables.
POSTGRES_HOST=
POSTGRES_PORT=
POSTGRES_USER=
POSTGRES_PASSWORD=
POSTGRES_DB=
DATABASE_URL= postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}?schema=public