Skip to content

SachinPrasanth777/TaskGuardian

Repository files navigation

TaskGuardian

Welcome to the TaskGuardian Repository. This is an API that is built to manage tasks by admins and users. The Key features include secure authentication and use of mails to notify the users about their tasks and also for authentication purposes.

Features

  • User registration
  • User verification via email
  • Admin registration
  • Admin verification via email
  • Issue Tasks to users followed by emails
  • Update the assignees of each task followed by emails

API Documentation

Admin Routes

POST /admin/signup

Signup for the admin users.

POST /admin/generate-otp

Generates OTP to the user account for secure admin authentication.

POST /admin/verify-otp

Verifies OTP with the one sent to the Email.

POST /admin/create-task

Note

This route requires a JWT Token

Route for creating a task and assigning a user.

DELETE /admin/delete-task

Note

This route requires a JWT Token

Route for admin to delete a task.

PUT /admin/update-task

Note

This route requires a JWT Token

Route for admin to update a task and its users. If the assignee is changed an email is sent to the new assignee.

User Routes

POST /users/signup

Signup for the users.

POST /users/generate-otp

Generates OTP to the user account for secure user authentication.

GET /users/login

For secure and passwordless authentication with your google account.

GET /users/auth

For finding out the user information from google and getting an access token for otp generation.

POST /users/verify-otp

Verifies OTP with the one sent to the Email.

GET /users/user

Note

This route requires a JWT Token

Get the information about the user.

GET /users/tasks

Note

This route requires a JWT Token Get all the tasks assigned to the user.

GET /users/all-tasks

Note

This route requires a JWT Token

Get all the tasks created by the admin

Screenshots

Screenshot 2024-07-10 at 3 32 46 PM Screenshot 2024-07-10 at 3 32 56 PM Screenshot 2024-07-10 at 3 37 09 PM Screenshot 2024-07-10 at 3 36 52 PM Screenshot 2024-07-10 at 3 43 00 PM Screenshot 2024-07-11 at 10 44 05 AM

How Start the Project?

Running the code

pip install -r requirements.txt
uvicorn index:app --reload

Running the Docker Container

docker compose up --build

Credits

This app uses the following tech stacks:

  • FastAPI
  • MongoDB
  • Docker
  • Google OAuth 2.0

About

An API to manage tasks for admins and users

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published