/Trello

A minimal clone of Trello back-end

Primary LanguagePython

Trello

This is a to-do RESTful APIs with following features:

  • Each task can have more than one assignee and each project has multiple tasks.
  • There are two roles: Developer and Project Manager.
  • Developers can add task and assign it to themselves.
  • Developers can retrieve all tasks on their project.
  • Project Managers can add/retrieve projects.
  • Project Managers can assign projects to developers.
  • Project Managers can add/retrieve tasks within their own projects.

Provided APIs:

  • Sign Up
  • Log In
  • List of tasks in a project
  • List of user’s tasks in the project
  • Assigns task to a developers by project managers

Database Diagram

DBDiagram

Easy Setup by Docker

docker-compose up

Installation without Docker 🤷‍♂️

  • First of all clone the project:
git clone https://github.com/EngRobot33/Trello.git
  • Then, we need a virtual environment you can create like this:
virtualenv venv
  • Activate it with the command below:
source venv/bin/activate
  • After that, you must install all the packages in requirements.txt file in project directory:
pip install -r requirements.txt
  • Create a .env file in root directory and add your created config:
SECRET_KEY = 'Your secret key generated by https://djecrety.ir'
DEBUG = 'Project debug status'
  • After that, migration:
python3 manage.py migrate
  • That's finished now you can run the project:
python3 manage.py runserver

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.