A Trello-like collaborative project management web app; Daneshkar Python/Django bootcamp final project.
- Introduction
- Features
- Models Designed Based On Below ERD
- Technologies Used
- Installation
- Usage
- Contributing
- Bug Reports and Feature Requests
- License
- Contact
In this app you can easily manage your project tasks with your team. You and all your team members should register their accounts. Then you can create a new team (a.k.a Workspace) and add your team members. You can define multiple projects (a.k.a Projects) for each workspace or team. Then you start to define project tasks and assign tasks to members. Each task has name, description, start date, end date, due date, status (include To-DO, Doing, Done and suspend) and a label. You can define as many labels as you want and allocate tasks to these labels.
- Projects: Create projects to represent different projects or teams. Each projects can have multiple lists.
- Lists: Organize tasks using lists. Customize list names to fit your workflow (e.g., "To Do," "In Progress," "Done").
- Labels: Categorize task with customizable labels, such as priority levels or task types.
- Comments and Attachments: Collaborate on cards by adding comments and attaching files.
- Search and Filter: Quickly find cards using search and filter options.
- User Accounts: Create user accounts to manage personal boards and tasks.
The ERD illustrates the entities, relationships, and attributes within the database. It serves as a reference for understanding how the data is organized and connected in the application.
- Django 4.2.3
- Django-rest framework 3.14.0
- Python 3.11
To run the Project Management Tool locally, follow these steps:
-
Clone the repository:
git clone https://github.com/saraeygh/trello-team-collaboration.git
-
Create a virtual environment:
python3 -m venv venv
-
Activate the virtual environment:
- On mscOS and linux: source venv/bin/activate - On Windows: venv/Scripts/activate.bat
-
Install the dependencies:
pip install -r requirements/base.txt pip install -r requirements/development.txt
-
Run database migrations:
python manage.py migrate
-
Start the development server:
python manage.py runserver
-
Access the application at
http://127.0.0.1:8000//
in your browser.
-
Create an account or log in to an existing one.
-
Create a new Project for your project.
-
Add tasks to your prpject (e.g., "To Do," "In Progress," "Done").
-
Within each list, create cards representing individual tasks.
-
Customize cards and task with descriptions, due dates, and assignees.
-
Collaborate with team members by adding comments and attachments to cards.
We welcome contributions from the community! To contribute to the project, follow these steps:
- Fork the repository and create your branch:
- git clone https://github.com/saraeygh/trello-team-collaboration.git
- cd trello-team-collaboration
- git checkout -b feature/your-feature-name
- Make your changes and commit them:
- git add .
- git commit -m "Add your commit message here"
- Push your changes to your forked repository:
git push origin feature/your-feature-name
Create a pull request to the main branch of the original repository.
If you encounter any bugs or have ideas for new features, please submit an issue on our issue tracker.
The Project Management Tool is open-source and distributed under the MIT License. Feel free to use, modify, and distribute it as per the terms of the license.
If you have any questions or inquiries, please feel free to contact any of the following:
-
Reza Saraey. (Project Lead)
- Email: [email protected]
- GitHub: saraeygh
-
Mahdieh Soleimani. (Developer)
- Email: [email protected]
- GitHub: MahdiehSoleimani
-
Hossein Asghari. (Developer)
- Email: [email protected]
- GitHub: hosseinasgharii
-
Reza Rashidian. (Developer)
- Email: [email protected]
- GitHub: RezaRashidian
You can reach out to any of the team members listed above for assistance or further information about the project.