Users is able to:
- View the optimal layout for the app depending on their device's screen size
- Add new todos to the list
- Mark todos as complete
- Delete todos from the list
- Filter by all/active/complete todos
- Clear all completed todos
- Toggle light and dark mode
- See their todo after page reload
- Bonus: Drag and drop to reorder items on the list (only for desktop devices)
- Live Demo: click here.
- Semantic HTML5 markup
- CSS with custom properties
- Flexbox
- JavaScript ES6
This project helped me practice a lot of things. I need to create a layout using CSS custom properties. I used these properties to implement a dark and light theme. I needed to manipulate DOM to dynamically change content. I added simple animation with every insert and remove todo. I also implement store user's todo, their order, and theme preference in localStorage. With this feature, when the user will visit the website again, nothing will disappear.
This is a solution to the Todo app challenge on Frontend Mentor. Frontend Mentor challenges help you improve your coding skills by building realistic projects.