Skip to content
  • Unlock Pro
  • Log in with GitHub
Solution
Submitted over 1 year ago

Todo app with drag-and-drop and light/dark modes using React

accessibility, react, tailwind-css, vite, progressive-enhancement
Josh Javier•930
@joshjavier
A solution to the Todo app challenge
View live sitePreview (opens in new tab)View codeCode (opens in new tab)

Solution retrospective


What did you find difficult while building the project? Implementing the custom checkbox, in particular ensuring that it stays reusable and progressively enhanced. I used an SVG sprite combined with the <use> element to reduce inline SVG bloat as the number of todo items increase.

Which areas of your code are you unsure of? I have added focus rings for basic accessibility, but I haven't done enough testing to manage the focus after some events, like when the user deletes a todo item.

Do you have any questions about best practices? I plan to refactor the logic into custom hooks to keep the code organized. Aside from that, what are other ways I could improve this React project?

Code
Loading...

Please log in to post a comment

Log in with GitHub

Community feedback

No feedback yet. Be the first to give feedback on Josh Javier's solution.

Join our Discord community

Join thousands of Frontend Mentor community members taking the challenges, sharing resources, helping each other, and chatting about all things front-end!

Join our Discord
Frontend Mentor logo

Stay up to datewith new challenges, featured solutions, selected articles, and our latest news

Frontend Mentor

  • Unlock Pro
  • Contact us
  • FAQs
  • Become a partner

Explore

  • Learning paths
  • Challenges
  • Solutions
  • Articles

Community

  • Discord
  • Guidelines

For companies

  • Hire developers
  • Train developers
© Frontend Mentor 2019 - 2025
  • Terms
  • Cookie Policy
  • Privacy Policy
  • License