I maintain everything in notes, I use apple notes but you can use whatever as long as it's very quick to access and modify. I tried many tools / sites but I noticed that the moment the list is maintained on some service/site I start maintaining it less. With notes, it's one click away and accessible from my phone. I also avoided tools that require me to click to create a note, click to delete, or anything slightly complicated. I just need to move lines of text around with my keyboard.
Start by creating a new note for the project.
I define the begin/end boundaries of the project by creating a list of high level tasks. If you can go directly to low level tasks why not. Tasks can include define & create API endpoints, research tasks, modules to implement, devops stuff, docs, marketing, etc... I spend a good time creating the list. Sometimes days.
I start working on the tasks and while doing so I add/remove more detailed tasks as things become clearer and group related tasks. For example, I might have a group of tasks related to an HTTP API, and another group that lists the modules I need to implement. If a module is big enough it might become a new group and tasks related to it will be added.
while more_tasks:
new_tasks = execute_next_task()
if new_tasks:
add_tasks(new_tasks)
As I stumble on ideas while working on the project, I add them to a Backlog group sorted by priority. These tasks might need more thinking and can either get dropped or moved later to get implemented. What's important to me is to get these ideas/thoughts out so that they don't distract me.Let's say you're creating a new saas product. When the project is complete, start creating new tasks related to running the business like 'research keywords', 'create adwords campaign', etc.
I also have a list of various personal todos, and a list called 'Context Switching' which I use to list the projects I am currently working on which includes work and non-work related projects. It clears my mind and feels less overwhelming when I can look at a note and know exactly what I am working on. It also help me not feel 'lost' and maintain priority. The main goal of this is not to keep tasks in my head.
What's important is to always know what you need to work on. If you don't know, then spend time (hours/days) figuring this out.
I live by these notes. The notes are of course useless if not constantly maintained.