{"id":23592552,"url":"https://github.com/ali-sanad/todo-list","last_synced_at":"2026-04-07T07:35:24.181Z","repository":{"id":269211936,"uuid":"904967453","full_name":"Ali-Sanad/todo-list","owner":"Ali-Sanad","description":"Todo List with React and Typescript","archived":false,"fork":false,"pushed_at":"2024-12-21T19:11:23.000Z","size":239,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-21T20:19:24.863Z","etag":null,"topics":["eslint","git","github","github-pages","husky","nx","pnpm","prettier","react","react-testing-library","recoil","tailwindcss","typescript","vite","vitest"],"latest_commit_sha":null,"homepage":"https://ali-sanad.github.io/todo-list/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ali-Sanad.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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-12-17T22:32:37.000Z","updated_at":"2024-12-21T19:15:39.000Z","dependencies_parsed_at":"2024-12-21T20:29:35.704Z","dependency_job_id":null,"html_url":"https://github.com/Ali-Sanad/todo-list","commit_stats":null,"previous_names":["ali-sanad/todo-list"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ali-Sanad%2Ftodo-list","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ali-Sanad%2Ftodo-list/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ali-Sanad%2Ftodo-list/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ali-Sanad%2Ftodo-list/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ali-Sanad","download_url":"https://codeload.github.com/Ali-Sanad/todo-list/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239432734,"owners_count":19637798,"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":["eslint","git","github","github-pages","husky","nx","pnpm","prettier","react","react-testing-library","recoil","tailwindcss","typescript","vite","vitest"],"created_at":"2024-12-27T08:14:26.119Z","updated_at":"2025-11-04T10:30:28.389Z","avatar_url":"https://github.com/Ali-Sanad.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Todo List Application\n\n### Layout\n\n|Mobile|Desktop|\n|------|----------|\n|![Screenshot 2024-12-21 181339](https://github.com/user-attachments/assets/a7d198bf-050b-4654-bc08-f77fbfa1a99a)|![Screenshot 2024-12-21 181405](https://github.com/user-attachments/assets/c9a54590-9273-4a61-a34c-88d46d142179)|\n\n### Features\n\n- Add, remove, and toggle completion of todos.\n- Clean and responsive UI built with Tailwind CSS.\n- State management using Recoil for global state handling.\n\n### Tech Stack\n\n#### 1. **Tailwind CSS**\n\n- Tailwind CSS is used for styling the application with a utility-first approach.\n\n#### 2. **React**\n\n- React is used for building the UI components and managing the rendering of the Todo List.\n\n#### 3. **RecoilJS**\n\n- RecoilJS is utilized for state management, making it easy to manage the todos in a global state with simple hooks and atoms.\n\n#### 4. **TypeScript**\n\n- TypeScript is used to ensure type safety and improve the developer experience by providing better tooling, autocompletion, and error checking.\n\n#### 5. **NX**\n\n- NX is used for managing and scaling the project. It helps with running tasks such as building, linting, testing, and serving the application.\n\n#### 6. **React Testing Library (RTL) \u0026 Vitest**\n\n#### 7. **Pnpm, Vite, ESlint, Prettier, and Husky (pre-commit hook)**\n\n### Usage\n\n- Clone the repo\n- Install the dependencies\n\n```\npnpm install\n```\n\n- Run the application locally\n\n```\npnpm dev\n```\n\n- Run the test suits\n\n```\npnpm test\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fali-sanad%2Ftodo-list","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fali-sanad%2Ftodo-list","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fali-sanad%2Ftodo-list/lists"}