{"id":27230719,"url":"https://github.com/gabrli/taskify","last_synced_at":"2026-02-03T03:30:58.100Z","repository":{"id":221031043,"uuid":"734372344","full_name":"Gabrli/Taskify","owner":"Gabrli","description":"Taskify Work Planner: Streamline your task management and enhance productivity with Taskify. Effortlessly organize tasks, collaborate with your team, and stay on top of deadlines. Experience seamless task management today!","archived":false,"fork":false,"pushed_at":"2024-03-28T17:52:28.000Z","size":6889,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-02T19:01:56.496Z","etag":null,"topics":["planner","productivity-tools","project-management-tool","python3","reactjs","tailwindcss","task-management","task-organizer","taskify","typescipt"],"latest_commit_sha":null,"homepage":"https://taskify-work-planner.vercel.app/","language":"TypeScript","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/Gabrli.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":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-12-21T14:15:27.000Z","updated_at":"2025-01-03T08:44:43.000Z","dependencies_parsed_at":"2024-03-28T18:57:01.981Z","dependency_job_id":null,"html_url":"https://github.com/Gabrli/Taskify","commit_stats":null,"previous_names":["gabrli/taskify"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gabrli%2FTaskify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gabrli%2FTaskify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gabrli%2FTaskify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gabrli%2FTaskify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Gabrli","download_url":"https://codeload.github.com/Gabrli/Taskify/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248225708,"owners_count":21068078,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["planner","productivity-tools","project-management-tool","python3","reactjs","tailwindcss","task-management","task-organizer","taskify","typescipt"],"created_at":"2025-04-10T13:31:45.537Z","updated_at":"2026-02-03T03:30:58.074Z","avatar_url":"https://github.com/Gabrli.png","language":"TypeScript","readme":"\u003ch1\u003eTaskfiy - Inteligent task planner \u003c/h1\u003e\n\n---\n\n\u003ch2\u003eLIVE:\u003c/h2\u003e\n\n- https://taskify-work-planner.vercel.app/\n\n---\n\n# ABOUT PROJECT :bulb: :\n\n- \u003ch3\u003e:hammer: Why did we build this project ?\u003c/h3\u003e Our motivation we found in the problem while planing our tasks. We needed something that would plan and calculate stages of our tasks for us.\n- \u003ch3\u003e:technologist: How we found the solution ? \u003c/h3\u003e So, we thought that is possible create a function which based on chooised by user \u003cstrong\u003e start date\u003c/strong\u003e and \u003cstrong\u003e end date\u003c/strong\u003e with help \u003cstrong\u003e current date\u003c/strong\u003e, will be calculate all needed informations and show data on charts. To sum up, the most important thing in all this are calculations based on \u003cstrong\u003e3 dates\u003c/strong\u003e and after all calculations our application show user his \u003cstrong\u003e progress, finished days, future days and how much he must to do \u003c/strong\u003e in chooised task.\n\n---\n\n### :raising_hand_man:\n\n| AUTORS                                                     | FRONTEND                              | BACKEND                               |\n|:----------------------------------------------------------:|:-------------------------------------:|:-------------------------------------:|\n| **GabrielJuniorDev** ([Gabrli](https://github.com/Gabrli)) | ![100%](https://progress-bar.dev/100) | ![0%](https://progress-bar.dev/0)     |\n| **gental-py** ([gental-py](https://github.com/gental-py/)) | ![0%](https://progress-bar.dev/0)     | ![100%](https://progress-bar.dev/100) |\n\n---\n\n## :hammer_and_wrench: Tech stack\n\n\u003ch1\u003eFrontend\u003c/h1\u003e\n\n- \u003cimg src=\"https://github.com/devicons/devicon/blob/master/icons/react/react-original-wordmark.svg\" title=\"React\" alt=\"React\" width=\"20\" height=\"20\"/\u003e\u0026nbsp; React + Vite\n- \u003cimg src=\"https://github.com/devicons/devicon/blob/master/icons/typescript/typescript-original.svg\" title=\"TypeScript\" alt=\"TypeScript\" width=\"20\" height=\"20\"/\u003e\u0026nbsp; TypeScript\n- \u003cimg src=\"https://github.com/devicons/devicon/blob/master/icons/tailwindcss/tailwindcss-plain.svg\"  title=\"CSS3\" alt=\"CSS\" width=\"20\" height=\"20\"/\u003e\u0026nbsp; Tailwindcss\n- \u003cimg src=\"https://github.com/devicons/devicon/blob/master/icons/html5/html5-plain-wordmark.svg\"  title=\"HTML\" alt=\"HTML5\" width=\"20\" height=\"20\"/\u003e\u0026nbsp; HTML5\n\n\u003ch1\u003eBackend\u003c/h1\u003e\n\n- \u003cimg src=\"https://github.com/devicons/devicon/blob/master/icons/python/python-original-wordmark.svg\"  title=\"Python3\" alt=\"Python3\" width=\"20\" height=\"20\"/\u003e\u0026nbsp; Python3\n- \u003cimg src=\"https://github.com/devicons/devicon/blob/master/icons/fastapi/fastapi-original-wordmark.svg\"  title=\"FastAPI\" alt=\"FastAPI\" width=\"20\" height=\"20\"/\u003e\u0026nbsp; FastAPI\n\n---\n\n### Other tools\n\n- \u003cimg src=\"https://github.com/devicons/devicon/blob/master/icons/git/git-plain-wordmark.svg\"  title=\"GIT\" alt=\"GIT\" width=\"20\" height=\"20\"/\u003e  Git - version control system\n\n---\n\n\u003ch2\u003eSCREENS:\u003c/h2\u003e\n\u003ch3\u003e1.Landing page: \u003c/h3\u003e\n- Dark mode: \n\u003cimg src=\"https://github.com/Gabrli/Taskify/assets/110058841/030b5434-2656-4214-8fdc-e40a8c4c2e90\"/\u003e\n\n- Light mode:\n  \n  \u003cimg src=\"https://github.com/Gabrli/Taskify/assets/110058841/fe667f16-3698-4486-a772-eb673f67c4d8\"/\u003e\n\n\u003ch3\u003e2.Dashboard:\u003c/h3\u003e\n- Dark mode:\n\u003cimg src=\"https://github.com/Gabrli/Taskify/assets/110058841/5dcce7b0-5bd4-42d8-a649-566996649ad3\"/\u003e\n\n- With Notifications:\n  \n  \u003cimg src=\"https://github.com/Gabrli/Taskify/assets/110058841/9f81a1d5-6ec0-42a6-b923-6ea9d2d46fed\"/\u003e\n\n---\n\n### API Server\n\n##### Response:\n\nEvery response is in `JSON` format and has a `\"status\"` key with a boolean value.\n\nWhen the value is `True`, the action succeeded,\n\n  and additional data may be passed by response\n\n  (check the DATA ON SUCCESS column for details).\n\nWhen the value is `False`, the required action failed,\n\n  and the response will contain `\"err_msg\"` with\n\n  an error message in a displayable form.\n\n**All endpoints are POST methods**\n\n(except `/accounts/getAllNames` which is **GET**)\n\n| **ENDPOINT**               | **INPUT DATA**                                                                 | **DATA ON SUCCESS**                                                                                 |\n| -------------------------- | ------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------- |\n| `/accounts/login`          | `username`, `password`                                                         | uid: `str`                                                                                          |\n| `/accounts/register`       | `username`, `password`, `email`                                                | uid: `str`                                                                                          |\n| `/accounts/delete`         | `uid`                                                                          | -                                                                                                   |\n| `/accounts/changePassword` | `uid`, `new`                                                                   | -                                                                                                   |\n| `/accounts/getAllNames`    |                                                                                | names: `List[string]`                                                                               |\n| `/tasks/create`            | `uid`, `name`, `description`, `date_start`, `date_end`, `Optional: folder_key` | task_id: `str`                                                                                      |\n| `/tasks/edit`              | `uid`, `task_id` `name`, `description`, `date_start`, `date_end`               | -                                                                                                   |\n| `/tasks/remove`            | `uid`, `task_id`                                                               | -                                                                                                   |\n| `/tasks/getAll`            | `uid`                                                                          | tasks: `List[object]`\u003cbr/\u003e[{`name`, `description`, `date_start`, `date_end`, `task_id`}, {...},...] |\n| `/tasks/getTask`           | `uid`, `task_id`                                                               | task: `object`\u003cbr/\u003e{`name`, `description`, `date_start`, `date_end`, `task_id`}                     |\n| `/folders/create`          | `uid`, `name`, `color`                                                         | folder_key: `str`                                                                                   |\n| `/folders/get_folder`      | `uid`, `folder_key`                                                            | folder: `object`\u003cbr/\u003e{`author: str`, `name: str`, `color: str`, `task_ids: List[str]`}              |\n| `/folders/update`          | `uid`, `folder_key`, `new_name`, `new_color`                                   | -                                                                                                   |\n| `/folders/remove`          | `uid`, `folder_key`                                                            | -                                                                                                   |\n| `/folders/add_task`        | `uid`, `folder_key`, `task_id`                                                 | -                                                                                                   |\n| `/folders/remove_task`     | `uid`, `folder_key`, `task_id`                                                 | -                                                                                                   |\n\n##### Run server:\n\n1. Make sure You have `Python` and `pip` installed.\n\n2. Install all requirements: `pip3 install -r requirements.txt` \n\n3. Run API locally:\n   \n   `python3 -m uvicorn api:api`\n\n4. Deploy API:\n   \n   `python3 -m uvicorn api:api --host 0.0.0.0 --port YOUR_PORT`\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgabrli%2Ftaskify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgabrli%2Ftaskify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgabrli%2Ftaskify/lists"}