{"id":32358716,"url":"https://github.com/haquanq-frontendmentor/todo-app","last_synced_at":"2026-05-03T01:44:34.569Z","repository":{"id":319135836,"uuid":"1072468844","full_name":"haquanq-frontendmentor/todo-app","owner":"haquanq-frontendmentor","description":"Solution for frontendmentor.io challenge: todo-app","archived":false,"fork":false,"pushed_at":"2025-11-03T05:02:25.000Z","size":562,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-03T01:44:19.968Z","etag":null,"topics":["frontendmentor","frontendmentor-intermediate","pinia","sortablejs","tailwindcss","typescript","vue"],"latest_commit_sha":null,"homepage":"https://haquanq-frontendmentor.github.io/todo-app/","language":"Vue","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/haquanq-frontendmentor.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-08T19:02:39.000Z","updated_at":"2025-11-03T20:59:21.000Z","dependencies_parsed_at":null,"dependency_job_id":"865154f1-ace3-4cc1-be7b-f0b8e94140df","html_url":"https://github.com/haquanq-frontendmentor/todo-app","commit_stats":null,"previous_names":["haquanq-frontendmentor/todo-app"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/haquanq-frontendmentor/todo-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haquanq-frontendmentor%2Ftodo-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haquanq-frontendmentor%2Ftodo-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haquanq-frontendmentor%2Ftodo-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haquanq-frontendmentor%2Ftodo-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/haquanq-frontendmentor","download_url":"https://codeload.github.com/haquanq-frontendmentor/todo-app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haquanq-frontendmentor%2Ftodo-app/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32555839,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T00:31:16.350Z","status":"ssl_error","status_checked_at":"2026-05-03T00:31:15.546Z","response_time":132,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: 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":["frontendmentor","frontendmentor-intermediate","pinia","sortablejs","tailwindcss","typescript","vue"],"created_at":"2025-10-24T13:29:59.401Z","updated_at":"2026-05-03T01:44:34.562Z","avatar_url":"https://github.com/haquanq-frontendmentor.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Frontend Mentor - Todo App Solution\r\n\r\nThis is a solution to the [Todo app challenge on Frontend Mentor](https://www.frontendmentor.io/challenges/todo-app-Su1_KokOW). Frontend Mentor challenges help you improve your coding skills by building realistic projects.\r\n\r\n\u003cp\u003e\r\n  \u003ca href=\"https://www.frontendmentor.io/solutions/interactive-todo-app-using-vue-tailwindcss-CRfX0_XLo6\"\u003e\r\n    \u003cimg\r\n      alt=\"Solution post\"\r\n      src=\"https://img.shields.io/badge/Frontendmentor-blue?label=Solution%20on\"\r\n    /\u003e\u003c/a\u003e\r\n  \u003ca href=\"https://haquanq-frontendmentor.github.io/todo-app/\"\u003e\r\n    \u003cimg\r\n      alt=\"Live demo\"\r\n      src=\"https://img.shields.io/badge/Demo-teal?label=Live\"\r\n    /\u003e\u003c/a\u003e\r\n  \u003ca href=\"./LICENSE\"\r\n    \u003e\u003cimg\r\n      allt=\"MIT License\"\r\n      src=\"https://img.shields.io/badge/MIT-blue?label=license\"\r\n  /\u003e\u003c/a\u003e\r\n\u003c/p\u003e\r\n\r\n![](./docs/preview.jpg)\r\n\r\n## Table of Contents\r\n\r\n- [Project Overview](#sunrise-project-overview)\r\n- [Tech Stack and Approach](#stars-tech-stack-and-approach)\r\n- [Local Development](#leaves-local-development)\r\n- [Deployment](#maple_leaf-deployment)\r\n\r\n## :sunrise: Project Overview\r\n\r\n### Challenge Requirements\r\n\r\n- View the optimal layout for the app depending on their device's screen size\r\n- See hover states for all interactive elements on the page\r\n- Add new todos to the list\r\n- Mark todos as complete\r\n- Delete todos from the list\r\n- Filter by all/active/complete todos\r\n- Clear all completed todos\r\n- Toggle light and dark mode\r\n- **Bonus**: Drag and drop to reorder items on the list\r\n\r\n### Status\r\n\r\nFeatures\r\n\r\n- [x] Todo component with drag-n-drop/sorting\r\n- [x] Dark/light mode\r\n\r\nAccessibility\r\n\r\n- [x] Responsive accross different screen sizes\r\n- [x] Interactive elements have clear focus indicator\r\n\r\n## :stars: Tech Stack and Approach\r\n\r\n### Built With\r\n\r\n- **HTML5** – Semantic structure\r\n- **Vue** – Fine-grained reactivity state management\r\n- **TailwindCSS** – Utility-first CSS for fast development\r\n- **TypeScript** - Interactivity and application logic\r\n- **Vite** - Fast development server, production build and easy configuration\r\n\r\n### Approach\r\n\r\n- Mobile-first workflow for better performance on smaller devices\r\n- Accessibility guided by [ARIA Authoring Practices Guide (APG)](https://www.w3.org/WAI/ARIA/apg/)\r\n\r\n## :leaves: Local Development\r\n\r\n### Prerequisites\r\n\r\nInstall the following:\r\n\r\n- Git (latest version)\r\n- Node.js (latest LTS recommended)\r\n- pnpm (latest version)\r\n\r\n### Setup\r\n\r\n```\r\ngit clone https://github.com/haquanq-frontendmentor/todo-app.git\r\ncd todo-app\r\npnpm install\r\n```\r\n\r\n### Start Development Server\r\n\r\n```\r\npnpm dev\r\n```\r\n\r\n## :maple_leaf: Deployment\r\n\r\nDeployed to Github Pages via Github Action.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaquanq-frontendmentor%2Ftodo-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhaquanq-frontendmentor%2Ftodo-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaquanq-frontendmentor%2Ftodo-app/lists"}