{"id":20075587,"url":"https://github.com/sachinprasanth777/taskguardian","last_synced_at":"2026-05-05T01:36:47.685Z","repository":{"id":247889325,"uuid":"823573363","full_name":"SachinPrasanth777/TaskGuardian","owner":"SachinPrasanth777","description":"An API to manage tasks for admins and users","archived":false,"fork":false,"pushed_at":"2025-01-10T10:23:54.000Z","size":35,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-02T12:44:40.838Z","etag":null,"topics":["authentication","docker","fastapi","smtp","task-manager"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SachinPrasanth777.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-03T09:37:04.000Z","updated_at":"2025-01-10T10:23:57.000Z","dependencies_parsed_at":"2024-07-11T05:55:42.077Z","dependency_job_id":"e44af77f-cefa-46ab-b8bf-1a562194d5fd","html_url":"https://github.com/SachinPrasanth777/TaskGuardian","commit_stats":null,"previous_names":["sachinprasanth777/taskguardian"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SachinPrasanth777/TaskGuardian","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SachinPrasanth777%2FTaskGuardian","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SachinPrasanth777%2FTaskGuardian/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SachinPrasanth777%2FTaskGuardian/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SachinPrasanth777%2FTaskGuardian/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SachinPrasanth777","download_url":"https://codeload.github.com/SachinPrasanth777/TaskGuardian/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SachinPrasanth777%2FTaskGuardian/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32632288,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-04T10:08:07.713Z","status":"ssl_error","status_checked_at":"2026-05-04T10:08:02.005Z","response_time":58,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["authentication","docker","fastapi","smtp","task-manager"],"created_at":"2024-11-13T15:00:00.937Z","updated_at":"2026-05-05T01:36:47.657Z","avatar_url":"https://github.com/SachinPrasanth777.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\" id=\"title\"\u003eTaskGuardian\u003c/h1\u003e\n\n\u003cp id=\"description\"\u003eWelcome 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.\u003c/p\u003e\n\n## Features\n\n- [x] User registration\n- [x] User verification via email\n- [x] Admin registration\n- [x] Admin verification via email\n- [x] Issue Tasks to users followed by emails\n- [x] Update the assignees of each task followed by emails \n\n## API Documentation\n### `Admin Routes`\n\n### `POST /admin/signup`\n\nSignup for the admin users.\n\n### `POST /admin/generate-otp`\n\nGenerates OTP to the user account for secure admin authentication.\n\n### `POST /admin/verify-otp`\n\nVerifies OTP with the one sent to the Email.\n\n### `POST /admin/create-task`\n\n\u003e [!NOTE]  \n\u003e This route requires a JWT Token\n\nRoute for creating a task and assigning a user.\n\n### `DELETE /admin/delete-task`\n\n\u003e [!NOTE]  \n\u003e This route requires a JWT Token\n\nRoute for admin to delete a task.\n\n### `PUT /admin/update-task`\n\n\u003e [!NOTE]  \n\u003e This route requires a JWT Token\n\nRoute for admin to update a task and its users. If the assignee is changed an email is sent to the new assignee.\n\n### `User Routes`\n\n### `POST /users/signup`\n\nSignup for the users.\n\n### `POST /users/generate-otp`\n\nGenerates OTP to the user account for secure user authentication.\n\n### `GET /users/login`\n\nFor secure and passwordless authentication with your google account.\n\n### `GET /users/auth`\n\nFor finding out the user information from google and getting an access token for otp generation.\n\n### `POST /users/verify-otp`\n\nVerifies OTP with the one sent to the Email.\n\n### `GET /users/user`\n\n\u003e [!NOTE]  \n\u003e This route requires a JWT Token\n\nGet the information about the user.\n\n### `GET /users/tasks`\n\n\u003e [!NOTE]  \n\u003e This route requires a JWT Token\nGet all the tasks assigned to the user.\n\n### `GET /users/all-tasks`\n\n\u003e [!NOTE]  \n\u003e This route requires a JWT Token\n\nGet all the tasks created by the admin\n\n\u003ch2\u003eScreenshots\u003c/h2\u003e\n\u003cimg width=\"1440\" alt=\"Screenshot 2024-07-10 at 3 32 46 PM\" src=\"https://github.com/SachinPrasanth777/TaskGuardian/assets/142246653/fbf15c4f-7be6-40b8-9a5f-94dd0b45d7cd\"\u003e\n\u003cimg width=\"1440\" alt=\"Screenshot 2024-07-10 at 3 32 56 PM\" src=\"https://github.com/SachinPrasanth777/TaskGuardian/assets/142246653/e237f226-ddf5-474d-b448-d6674d409aad\"\u003e\n\u003cimg width=\"1440\" alt=\"Screenshot 2024-07-10 at 3 37 09 PM\" src=\"https://github.com/SachinPrasanth777/TaskGuardian/assets/142246653/03371d61-1f49-42e4-9210-8bd4df8c6796\"\u003e\n\u003cimg width=\"1440\" alt=\"Screenshot 2024-07-10 at 3 36 52 PM\" src=\"https://github.com/SachinPrasanth777/TaskGuardian/assets/142246653/f1c708e7-18bc-44ac-84ef-a29cdaf72f89\"\u003e\n\u003cimg width=\"1440\" alt=\"Screenshot 2024-07-10 at 3 43 00 PM\" src=\"https://github.com/SachinPrasanth777/TaskGuardian/assets/142246653/88744154-88c1-46b9-aa44-f8e65aac0195\"\u003e\n\u003cimg width=\"1440\" alt=\"Screenshot 2024-07-11 at 10 44 05 AM\" src=\"https://github.com/SachinPrasanth777/TaskGuardian/assets/142246653/ffe8c876-a555-48f6-a5ed-457db6db44f0\"\u003e\n\n\n# How Start the Project?\n\n## Running the code\n```\npip install -r requirements.txt\n```\n```\nuvicorn index:app --reload\n```\n\n## Running the Docker Container\n```\ndocker compose up --build\n```\n\n## Credits\n\nThis app uses the following tech stacks:\n\n- FastAPI\n- MongoDB\n- Docker\n- Google OAuth 2.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsachinprasanth777%2Ftaskguardian","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsachinprasanth777%2Ftaskguardian","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsachinprasanth777%2Ftaskguardian/lists"}