Backend application implemented using Django and Django Rest Framework, with MongoDB as the database(from MongoDb Atlas Cluster). User authentication and authorization are also implemented.
- User signup with username, email, and password.
- User login with username and password.
- User logout with token expiration.
- CRUD operations for tasks (Create, Read, Update, Delete).
- Each task has a title, description, due date, and status.
- Users can only access their own tasks.
- MongoDB integration for task storage.
- Endpoint:
/api/signup/
- Method: POST
- Parameters: username, email, password
- Authorization: AllowAny
- Endpoint:
/api/login/
- Method: POST
- Parameters: username, password
- Authorization: AllowAny
- Endpoint:
/api/logout/
- Method: POST
- Authorization: IsAuthenticated
- Endpoint:
/api/tasks/
- Methods: GET, POST
- Parameters (POST): title, description, due_date, status
- Authorization: IsAuthenticated
- Endpoint:
/api/status-choices/
- Method: GET
- Authorization: AllowAny
- Clone the repository:
git clone https://github.com/yabesh12/task-manager-backend.git
- Create Python Virtualenvironment
python -m venv venv
- Activate python virtualenvironment:
source venv/bin/activate
- Install packages and dependencies:
pip install -r requirements.txt
- Apply the Migrations:
python manage.py migrate
- Create a Superuser (optional):
python manage.py createsuperuser
- Start the development server:
python manage.py runserver
default super-admin user:-
username - yabesh
password - yabesh