- add task
- delete task
- complete task
- list task
- edit task
- reoccurring tasks
- scheduled tasks for specific days
- reminders (email, push, etc...)
- show tasks for today (including done)
- color code cli output
- data persisted and backed up
- can work offline as well as online
- can interact from command-line (but not a TUI)
- can interact via website which should be good on mobile
- authentication
- can have multiple users
- one click sign-up
- separation of data
- can export your data
- only text - no images
- have consistent approach approach to logging
- have consistent approach to error handling
- have refactor to make it testable