The md file contains customer information, todos and time tracking. Based on this format I can generate an invoice with a detailed table of every task including the time required. And it even looks pretty good in the markdown view.
It can be edited in any IDE / text editor and even in the online editor of the git management.
Works pretty well so far. An example:
# Customer
```
Company Name
Magic Avenue 12
Zip-Code City
Project name with short description
30 day terms
```
# Todo
- [x] create project
- [x] init git
- [x] add build scripts
- [x] draw UI concept
- [x] Home
- [x] Settings
- [ ] Choose icons
- [ ] Build prototype
- [ ] Choose UI framework
- [ ] ...
# Time tracking
2022-04-26
- 17.42-18.02 project creation and git initialisation
2022-04-28
- 11.55-13.23 basic project setup and build scripts
2022-04-29
- 16.47-17.08 new UI concept (drawing and design, HomeView)
- 17.20-17.42 new UI concept (drawing and design, SettingsView)
01.15-00.00 refund for issue 6789 (75mins)
It's not ideal but it barely happens.Another minor issue is that my parser currently does not support overnight shifts like
2022-11-15
- 23.45-01.18 another task
These have to be divided into 2 separate ones: 2022-11-15
- 23.45-23.59 another task
2022-11-16
- 00.00-01.18 another task
I don't use any framework for unit tests. Only a short program for each test that returns 0 on success or some other number for failure and prints a message to stderr about what the problem is. These get run in a loop from a shell script.
And using bullet journal style to-do markers help organization.
- [ ] todo
- [x] done
- [-] failed
- [v] dropped
- [>] migrated
- [^] scheduled
- [<] delegated
Easy to set up vim highlighting on those patterns.
I have some examples here:
https://jodavaho.io/posts/bullet-journalling.html
And a bash setup here
Combined with plugging your linear account into the VCS of your choice (probably github/gitlab/bitbucket).
The free tier of https://www.figma.com/ is good for mockups and design.
https://help.openai.com/en/articles/7260999-how-do-i-export-...
You can break down any project into smaller and smaller sections to whatever degree you like and it makes it super easy to visualise everything and make progress.