Manteam is Project Management System built with Django/React. It allows users to create workspaces, add members to it, and assign roles to them. In each workspace, the owner can create and manage projects, and add tasks to them. The project provides GitHub integration, which automatically creates a new repository when creating a new project and creates a new branch when adding a new task to the project.
- ReactJS
- Axios
- React Redux Tools
- React Query
- Django Rest Framework
- Django ORM
- GitHub API
- JSON Web Token
- Authentication System
- Djoser
The project documentation can be found here.
- Clone the repository:
git clone https://github.com/moustafashahin122/ManTeam-Project-Management-System-ITI-Grad-Project
- Create a virtual environment and activate it:
python3 -m venv env
source env/bin/activate
- Install the dependencies:
pip install -r requirements.txt
- Create a PostgreSQL database and update the
DATABASES
setting inpms/settings.py
:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'your_database_name',
'USER': 'your_database_user',
'PASSWORD': 'your_database_password',
'HOST': 'localhost',
'PORT': '5432',
}
}
- Run the migrations:
python manage.py migrate
- Start the development server:
python manage.py runserver
npm run dev
- Navigate to
http://localhost:5173/
in your browser.
- Register a new user or login with an existing account.
- Create a new workspace or join an existing one by entering the workspace code.
- Add members to the workspace and assign roles to them.
- Create a new project in the workspace and add tasks to it.
- Activate GitHub integration to automatically create a new repository and branch for the project.
- View, edit, and delete workspaces, projects, and tasks as needed.
This project is licensed under the MIT license ↗.