Hi all (First Lemmy post, yay!)
Does anyone have recommendations for a way to capture, archive and visualize arbitrary data in one convenient location. I’m talking about arbitrary/misc. stuff like electricity usage, gas usage, body weight, spending, mileage, habit tracking etc… Essentially looking for a super solution that can be easily interfaced with, has convenient methods of browsing, filtering, and visualizing, and can (obviously, based on post location) be self hosted.
I currently use mint, beestat, Google Fit, Samsung Health and probably a few others as my trackers/monitors of my personal and home data, but I’ve always been curious about finding a solution where I have complete control over my personal data once it’s captured by the various sources, assuming I can get my hands on it via exporting manually or otherwise.
For background, My experience level is pretty minimal. I have unRAID running on an old desktop PC, hosting a file share and gitlab container. I can scrape python programs together easy enough, but databases and web tech will take some learning.
I’m interested in ways any of you intelligent folks may have figured out how to manage your personal data! Thanks in advance for sharing!
deleted by creator
I’m not here on self-hosted for underkill 😉
I’ve never liked dealing with excel for anything other than manual work. It’s data integrations have grown beyond my familiarity, and I’ve never liked any of the python libraries I’ve used for reading and writing excels formats. Go accessible with something like CSV, and you lose most things of value that excel can offer.
Currently though, this is my strategy. I’ve got folders of Excel sheets that I manually add exports of various things to, but I’m missing the piece that ties it all together, and I’d sure love to do less of the work manually.
It’s not exactly what you’re asking for, but you should check out the opensource Android app Track & Graph. It’s also on F-Droid
It’s a local app though, I don’t think it has any sync function.
Brainstorming a bit, I think wiring up InfluxDB, Grafana plus some convenient way of inputting all those data sources sounds ideal. As a time series database, keeping track of how data evolves over time is InfluxDB’s whole thing, Grafana or similar would be for visualizing said data. I guess the complicated part would be getting your data sources to write to it in a convenient way, not sure if there’s a generic enough project out there already.
Looking around a bit, not too dissimilar to what this blog post has done.Thanks for the suggestions. At a quick glance, grafana looks to be perfect for the visualization aspect (at least in terms of capabilities). Glad to see there are free utilities for that and I might not have to resort to chicken scratch html/pyplot :-) I have yet to dig into influxDB still…
I’d look at karlicoss’s personal data infrastructure for inspiration (or perhaps deterrent).
Damn, that’s as fascinating as it is daunting. Some impressive dedication in there regardless!
Deterrent is right. That graph is terrifying! I feel their frustration regarding getting data from Android apps. Part of what got me started thinking about this was when I realized that the years of data I entered into my fitness pal was suddenly locked behind a subscription service :-( Thanks for sharing!
Wait My Fitness Pal went subscription model? Also, pay once, export once, cancel?
Not entirely, just for some features, including data export past a certain date iirc. I probably will wind up doing just that though if I cannot figure out how to get the data off my phone. Right now the phone app is the only place I can even see that the data exists, so I’m slightly afraid of changing anything in mfp lest it ‘sync’ my data out of existence 😕
Oof on that last one. I know for experience how some apps handle sync and poof data is gone forever.
I use Home Assistant for similar purposes, with Influx DB and Grafana. There are many integrations to automatically populate data. For example, I have heart rate data from my Apple Watch flow in so I can view it in Grafana.
Nextcloud notes support markdown. It may be a starting point.