Pixeldust Backend Hiring Assignment
Create a project in Django to demonstrate a task management system. The functionality should include the ability to manage projects and tasks
- Tasks
- List all the tasks
- Create a new task
- Delete a task
- Edit the task status
- Projects
- List all the projects(only the ones that have not ended)
- Create a new project
- Delete a project
- View a project
- Show list of all the tasks for that particular project
Project:
- Name
- Description
- Client(Foreign key to client)
- StartDate(The day when the entry is created)
- Enddate
Task:
- Name
- Description
- Project(Foreign key to Project)
- Status(TODO, WIP, ONHOLD, DONE)
It's good if the candidate knows DRF and can create REST API's as DRF is heavily used at Pixeldust. If you are someone who knows DRF and wants an edge. Please create REST API's for the following
- Fetch all projects(with pagination)
- Fetch all tasks(with pagination)
- View a project(should return all the tasks for the project too)
- View a task
- Delete a task
- Delete a project
Fork this repository to your personal account and for submission raise a pull request againt base repository once you're done with your solution.
You will get one week to complete the assignment. Please let us know in advance if for whatever reasons you cannot complete it within the said duration but you intent to
- Enter all the project dependencies in a requirements.txt within the project so that it is easy to setup the project
- Explain with comments wherever you are doing something complex
- Define your functions/classes/variables with clear naming conventions