I use a `TODO.md` file.
GitHub flavored markdown will format a list like this:
1. [X] Dockerfile
2. [ ] Bulk Inference
3. [ ] CLI
4. [ ] Logging
as a neat little list of checked/unchecked checkboxes. I create a section called "Backlog" for future ideas, a section called "Bugs" for bugs to fix, and an unnamed section at the top with current items. Once I reach a milestone like a release, I delete all the completed items.