E.g. I can type:
today wake 8:30
to record that I woke up at 8:30am today. Similar for other stats. All this gets saved in a simple JSON file.I then have a bunch of scripts on the backend that can read the JSON file, display it in column form, graph it, dissect it, and so on.
For example, I can do
series annotate wght -f annotate:Low-carb -t annotate:"End Low-carb" | graph
to display all the annotation (these are the major life events/trials) and weight data from the beginning of a low-carb data to the end, and display them in a nice graph.I think the problem with off-the-shelf solutions here is that these aren't flexible enough. E.g. at one point I went through and compared major life events to see if any of them had caused changes in my sleep patterns or weight. At the time I recorded the data (almost a decade now) I hadn't even thought of this, but it was very easy to build the functionality in later to match my current needs.