- A simple input bar to add Todo(s) on pressing the return-key.
- A list of TODO cards where each todo is appended on creation.
- Clicking on a TODO card should mark the TODO as complete and move it to the bottom of the list.
- The active TODO cards should appear in order of creation (most recent on top), while the completed todo cards should appear in order of completion (most recent on top).
- A reset button on the top right corner of the App to clear all Todo(s) and return to initial state.
- Hitting the refresh button (including hard refresh) in the browser should not cause any change in the state of the app (it should work like a regular offline app).
- Create a Hash-tag feature:
- Any text in todo matching the #hashtag pattern should be separately highlighted
- Clicking on a hashtag should act as a filter and show only Todo(s) containing that tag.
- Hashtags can be stacked and the result should be only Todo(s) where all of them are present (ex. after clicking #work I should then be able to click #back-end to see Todo(s) containing both tags)
- We expect to see UI/UX chops coming from your end.
- Obvious things should work as expected.
- Any additional utility or UX features that you might have time for are appreciated.
- App should work in the latest version of Google Chrome and Firefox.
- App should work simply by starting an HTTP server in the root folder (it should have index.html file as entry-point).
Use Git for versioning and create a public Github repository to host your code. Share the link of the repository with us.
This submission serves the purpose of demonstrating your capabilities. Anything that eases the process of determining the correctness and robustness of your solution will be to your benefit. Documentation, a list of assumptions, clear highlighting of unhandled edge cases etc., would be highly appreciated. For any queries please feel free to contact us.