ryn.cx

Does The World Need Another To Do App?

Todo Apps

It feels silly wanting to write a todo app when there are already hundreds of them out there, but here I am thinking about writing one. I think it comes down to the simple fact everyone's brain works differently. I know exactly what I want the todo app to do, but I have been unable to find one that works exactly the way I want it to work.

To do apps are one of the simplest applications you can make, so why not spent a little bit of time making one that perfectly fits all my requirements?

Required Somewhat Complex Features

Tasks should have an optional start date and an optional due date with easy filtering and sorting based on these values.

  • Start dates can be used to group tasks into 2 main types: "Active Tasks" and "Future Tasks".
    • Active Tasks are tasks without a start date or tasks where the start date is in the past. It is assumed that the task can be completed at this point in time. If the task cannot be completed for some reason, there should be an easy way to modify the start date to a date in the future when it can be completed.
    • Future Tasks are tasks where the start date is in the future.
    • There should be an easy way to filter between "All Tasks", "Active Tasks", and "Future Tasks", but the home screen should only show active tasks by default because the todo app should only show exactly the information that is required to the user when they need it. If the task is something that cannot be done right now and must be done in the future, it should be hidden away because it is not important at this point in time.
    • Other additional filters will be added as well, like filtering between tasks with specific due dates and tasks without specific due dates.

Task completions should be tracked and logged.

There have been a few situations where it would be useful to be able to check a task's completion history. For example, if the date of a recurring task appears to be incorrect, you can check the logs to see if you accidentally marked the task as completed twice when it should have only been marked as completed once.

There are two distinct kinds of recurring tasks.

  • Tasks that recur based on when the task is completed.
    • Example: I have an email account that requires that I log in to the account at least once every 30 days. When I log in to the account, the due date of this task should always be exactly 30 days after the task is last completed.
  • Tasks that recur based on when the task is due.
    • Example: I have to do laundry every weekend. When the task is completed, the dates should be incremented by a week.

Required Simple Features

Task Categories

Tasks should be able to be categorized for filtering purposes. For example, some tasks can be work tasks that can only be accomplished at work and other tasks can be home tasks that can only be accomplished at home.

The to do list needs to be accessible on all of my devices.

For simplicity, I should be able to access the exact same to do list from my phone or desktop computer.

The app should not require a subscription.

I always look at the lifetime cost of an app. If the todo app costs $10 a month, that's $120 a year, and if I used the app for my entire life up to the age of 100, that would cost me $12,000, so it's much more economical to make my own app.

List view

All of the tasks should be shown in a list format.

Silly Extra Features I Might Add

Calendar support

It feels like it would take minimal modifications to make the app also have a calendar view where you could also add events in addition to tasks. It seems like it would be really convenient to have both a calendar and a todo app integrated together in a single application.

AI assistant for creating tasks

It might be cumbersome at times to fill out a form with all of the details of a task. It would be easy to make something that calls ChatGPT with a single sentence input that it transforms into a request that can be sent to the backend.