Building a rough plan of action before you start coding is a very important so that you and your colleagues or clients are aware of the road map you're planning to execute. Whether you're building an app for yourself or for someone else, a living backlog of features will always serve as a great reminder when you get back to a project after a break or serve as an information radiator that prevent constant requests for status updates.
In Agile development, you may have used various ticketing systems or tools that surface or Kanban boards. My favorite tool is Waffle.io, https://waffle.io/, because it directly integrates with your GitHub repository's issues and keeps track of status of issues via labels. This way, you can keep using the tool of your choice to interact with your repository and still, effortlessly, radiate information...