[HN Gopher] Self hosted FLOSS fitness/workout tracker
___________________________________________________________________
Self hosted FLOSS fitness/workout tracker
Author : freemh
Score : 168 points
Date : 2025-02-13 09:44 UTC (13 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| Bancakes wrote:
| Can't import from Apple Health. Looks promising but this is a
| major draw back.
| mkmk3 wrote:
| build it? It's foss
|
| https://github.com/wger-project/flutter/issues/618
| mightysashiman wrote:
| Excellent, will tty it out and report
| sandreas wrote:
| That TTY typo reveals you're a true nerd ;-)
| 31337Logic wrote:
| Neat project, thanks! But, I gotta ask... what does the "L" in
| FLOSS stand for? :-) (I've only ever heard of FOSS.)
| thanksgiving wrote:
| I believe it means libre or free as in free speech, not free as
| in free beer.
| moritzruth wrote:
| Libre.
|
| See
| https://en.m.wikipedia.org/wiki/Alternative_terms_for_free_s...
| flankstaek wrote:
| Usually the L stands for Libre indicating full freedom of usage
| of the software and that is not just "free" as a price tag.
|
| https://www.gnu.org/philosophy/floss-and-foss.en.html
| bbor wrote:
| Ok, this one's baffling, especially learning at the end that
| FLOSS is bad because it's meant to _de_ -emphasize the
| "libre" part.
|
| All OSS software is inherently without cost, that seems
| unquestioned here. So free only ever means one thing to non-
| laypeople, in this context. So isn't FOSS already the neutral
| middle ground between OSS and FS??
|
| Regardless, I'm struggling to conceive of how a piece of
| software could be OS but not F. I guess if it's, like,
| surveillance software known to be used by governments...?
| Maybe OSS that is paradoxically restrictively licensed,
| threatening any forks or unauthorized compilations with legal
| action? That seems like a terribly naive proposition, but I'm
| sure it's been floated by at least one MBA...
|
| In other words: you can argue all day about the
| justifications for OS'ing your S being more related to
| removing cost barriers or to sharing control, but in the end,
| you clearly have to do both. Making "F[L]OSS" redundant at
| best, confusing at worst!
|
| Surely I'm missing something, bc I know this has been
| litigated for many thousands of hours both pre- and post-
| Eternal September. But rn it just comes across as baseless
| pedantry
| diggan wrote:
| > All OSS software is inherently without cost, that seems
| unquestioned here.
|
| I don't think so, you could charge money for FOSS (like
| charging for a built binary but having the source be FOSS)
| and it'll still be as much FOSS as any other FOSS out
| there. It isn't very common to do so, but there isn't any
| inherently wrong or incorrect with charging for FOSS.
| bbor wrote:
| How could you charge for a binary if people can just
| compile it on their own...? Honor system? I guess you
| could make it inconvenient to compile, but then is that
| really OSS?
| diggan wrote:
| > How could you charge for a binary if people can just
| compile it on their own...?
|
| You don't make a binary publicly available, then you put
| the binary behind a paywall.
|
| Some examples:
|
| - Ardour - Lets you pull down the source and compile
| locally for free, or you pay to use their compiled
| binaries. Author/creator of Ardour hangs around on HN,
| maybe they could share their experience if they see this.
|
| - Radium - Another DAW like Ardour, does it the same way.
|
| - Fritzing - Designer for PCBs, same approach, pay for
| the binaries if you'd like, but free to compile from
| source if you can
|
| I'm sure there are many more examples out there, but
| these are the ones I thought about when I wrote my
| previous comment.
| remram wrote:
| The "F" (free), "L" (libre), and "OS" (open source) all mean
| the same thing, the acronym is just meant to make extra-sure to
| include all the ways people refer to that kind of software
| (last "S).
| PaulDavisThe1st wrote:
| They absolutely do NOT mean the same thing.
|
| There is open source software that requires payment to
| obtain.
|
| There is open source software that you are not free to do
| whatever you want with (non-libre)
|
| There is software available at no cost which is neither open
| source or libre.
|
| Just about every permutation of these 3 concepts has some
| actual example in the real world. Please do not promote the
| idea that they are in any way synonyms.
| CorrectHorseBat wrote:
| In this case they are basically synonyms, the Free in FLOSS
| doesn't mean free of charge and open source doesn't mean
| source available.
| satvikpendem wrote:
| What is an example of open source software that is not
| libre?
|
| Like the other commenter said, the F in F(L)OSS does mean
| free as in speech, not necessarily free as in beer.
| PaulDavisThe1st wrote:
| People disagree about this. If F is for free as in
| speech, what is the L for?
|
| I've been in the GNU/libre/open source world since 1986.
| My experience is that the L (for libre) was added
| specifically because the english "Free" is ambiguous and
| too often interpreted as without-cost/free-as-in-
| beer/gratis.
| satvikpendem wrote:
| Libre more specifically means the GNU licenses, as GNU
| didn't like that licenses like MIT were being called
| FOSS, as they don't preserve user freedoms like (A|L)GPL
| do.
| PaulDavisThe1st wrote:
| This is absolutely not the history I have lived through.
| satvikpendem wrote:
| https://www.gnu.org/philosophy/floss-and-foss.en.html
|
| Stallman wants people to say FLOSS to denote free
| software versus open source software, and my
| interpretation of this article is that he only deems the
| GNU licenses to be truly free (libre) software.
| PaulDavisThe1st wrote:
| Stallman acknowledges the he did not invent the term, and
| describes how the "L" was added to connote freedom in the
| free-as-in-speech sense, rather than type of freedom the
| "F" was typically associated with.
| satvikpendem wrote:
| FOSS was already a term to denote the other types of open
| source license like MIT, that is why FLOSS was
| specifically coined, to not only say that there is a
| difference in the word free, but also to differentiate
| GNU OSS license from the others.
| PaulDavisThe1st wrote:
| > What is an example of open source software that is not
| libre?
|
| One example I am familiar with is an (old) project called
| LinuxSampler. It was (probably incorrectly) licensed
| GPL+modification clause that prevented its use in any
| commercial hardware project.
|
| There have been some other projects that are released
| under what might be termed "GPL-but-no-military-use".
| satvikpendem wrote:
| Then they're not really open source then? Incorrectly
| licensing them doesn't actually mean they're open source.
| PaulDavisThe1st wrote:
| Unless you insist that open source means "there can be
| absolutely no limits whatsoever on the use of the source
| code" (which is not an unreasonable position), then they
| still fit into many people's sense of open source - they
| can do anything _they would want to do_ with it.
|
| The people I know who have added clauses like this do not
| believe they are breaking the spirit of open source; I'm
| not here to insist that they are right or wrong.
| satvikpendem wrote:
| I'm here to insist they are wrong, because people's
| notion of a term is not actually what that term might
| mean. Call me an etymological prescriptivist but OSS has
| a defined meaning that no amount of vibes-based hand
| wringing will change, it pertains to the OSI definition
| in my view.
|
| And let's not forget, licenses are legal contracts, so it
| behooves people even more to get them correct lest they
| be sued.
| PaulDavisThe1st wrote:
| The terms "OSS" and "open source" do not appear in the
| licenses associated with them.
| satvikpendem wrote:
| Why would they be, literally? That doesn't mean anything
| about whether they are in the category of open source or
| not.
| remram wrote:
| There is free software (as of FSF) that require payment to
| obtain.
| darkwater wrote:
| I'm using it (with the hosted service and app installed from
| f-droid) and we'll, the UI could be improved. Bigger issue is
| that there is no way to know in which series you are at the
| moment? Is the 3rd? The 4th? The 5th? Also the timer between
| series stops working if you put wger in the foreground (I
| disabled all the battery optimizations etc for it in Android 15
| on a Pixel 6a). Also some features are just in the web UI. But
| overall, it's a nice system and I keep using it.
| yard2010 wrote:
| Have you considered sending a PR? :)
| darkwater wrote:
| Yes I did, but I'm not very skilled with mobile development
| and I don't want to take time from the gym ;) Anyway I'm
| going to have a few spare days in the near future, I might
| try
| napsterbr wrote:
| Another interesting self-hosted tracker is https://ryot.io/.
|
| Demo: https://demo.ryot.io/_s/acl_vUMPnPirkHlT
|
| Code: https://github.com/IgnisDa/ryot
|
| (PS: they opted to go in a direction where it also includes some
| media-related features -- like tracking movies or books you've
| seen/read -- but this can be disabled).
| myself248 wrote:
| Stepping back a bit, we used to call these "programs". Why are
| they now "hosted"? I see this with recipe databases, fitness
| trackers, all sorts of things that have no reason to ever leave
| my laptop except when my backup job runs.
|
| What's the advantage of having the server and data on some device
| other than the one I'm using to interact with it?
| mcpeepants wrote:
| My impression is that "hosted" is common parlance for programs
| that present as web applications, rather than typical
| executables. A web application is naturally capable of "leaving
| the laptop" so to speak, which is often one of the
| benefits/intents of the program design.
| mortarion wrote:
| Because hosting it on a server allows for automatic data entry
| via a mobile phone app?
|
| No a lot of people would use fitness trackers if you manually
| had to enter all the information.
| nonameiguess wrote:
| For fitness trackers, you're often going to get sensor files
| directly from a wearable device, but that device may have
| limited or even no interactive IO facilities, making it
| unsuitable for planning and analysis, which requires exporting
| to a more capable device. That device may very well just be
| your laptop, but you'd still want the ability to directly
| receive sensor data that your laptop can't collect because you
| can't hook your laptop up to a heartrate monitor and
| accelerometer and GPS while you're working out.
|
| For a recipe database, if you're thinking of something like a
| food logger, having the food database shared by all users
| instead of local to each user is what allows the data to
| already be there the first time you ever log that same food. If
| it has a barcode or simple description and anyone else has ever
| input the nutrition data associated with it, it's already
| available to you without every user having to input that data
| individually.
| nelsonic wrote:
| Inputting data on your smartphone and it appearing on your
| laptop without any extra sync effort.
| alias_neo wrote:
| I like to think of it not as "computer program with extra
| steps" but rather "service I can access from anywhere/anytime
| using any device with added privacy and control".
|
| DISCLAIMER: I'm a backend software engineer so I'm biased.
| febusravenga wrote:
| 100% agree
|
| All replies focus on "service" or cloud-in-general is needed to
| implement sync between devices.
|
| Why we don't have "own" sync-my-files as-service that can be
| connected to many apps?
|
| I would prefer this one (in all incarnations -
| desktop/mobile/watch) to be just apps, but connected to
| something like "folder in dropbox" or "folder in gdrive" ...
|
| My cloud my choice. Their program my data (here or in my
| cloud).
|
| I know that it doesn't work in todays economy when everyone
| expects free in exchange for some invonvenience like ads/data-
| scraping by vendor.
| jasode wrote:
| _> apps, but connected to something like "folder in dropbox"
| or "folder in gdrive" ..._
|
| That's the opposite of gp's question of: _> no reason to ever
| leave my laptop [...] What's the advantage [...] data on some
| device other than the one I'm using to interact with it?_
|
| Gp was wondering why the data can't _remain local to that
| device [i.e. laptop]_. Proposing "choose-your-own-cloud-
| service" like DropBox and Google Drive contradicts that.
| PaulDavisThe1st wrote:
| > What's the advantage of having the server and data on some
| device other than the one I'm using to interact with it?
|
| Mostly that many people have more than 1 computer these days: a
| small one that just about fits in the palm of their hand, and a
| larger one that stays in a room.
|
| This means that most people are instantly operating within the
| realm of "distributed computing", and one of the fundamental
| approaches to that sort of thing is to allow one of the
| computers to both provide and accept data to/from the other.
|
| Of course, if you have an application that will only ever be
| used on a single computing device, and whose data has no
| utility anywhere else, there's no need for the data to be able
| to move to/from a server. Such applications do exist, but so do
| many, many more where the ability to view and modify the data
| on different devices in different locations is desirable, even
| when there's just a single user involved.
| ashu1461 wrote:
| Until and unless storing data locally is your USP, it can
| create issues as well for the developer
|
| - They might have less control over the algorithms deployed on
| client side vs them being on the server. In case of android
| apps it is a hassle to get the users to upgrade the app. - In
| case there is a bug in the data I can't easily see the shape of
| the data and debug faster.
|
| Probably in this case developer might be ambitious and would be
| thinking about adding extra features to their stack which would
| be potentially easy if algorithms and data is under their
| control.
| Vrondi wrote:
| To make it super easy to use the same "program" on your
| smartphone/tablet/laptop/desktop, wherever you are. And/or to
| simultaneously share access to it with friends/family. Yes, you
| can all just point a local app at a data share instead (the old
| way), but many apps aren't available across all these platforms
| to even make this possible across iOS, OSX, Linux, Android, and
| Windows, so this often doesn't work for a group of more than
| two people.
| autoexec wrote:
| > many apps aren't available across all these platforms to
| even make this possible across iOS, OSX, Linux, Android, and
| Windows,
|
| Thanks to all the spying/telemetry in most of those platforms
| once you use your privacy protecting app on them you lose the
| advantage of your data being self-hosted in the first place.
| timmg wrote:
| Is there a missing "product" for [easy] "self-hosting" in the
| cloud? (Or does it exist? Or will it only apply to a narrow kind
| of user?)
|
| Like I think there should be some way to "one-button-click"
| install "self-hosted" apps in the cloud, tied to my personal
| account (and maybe with auth tied to that account). And I pay the
| usage fees for the cloud (hopefully on a per-request kind of
| basis, not an always-on server instance).
|
| Is this a thing that I don't know about? Or is the market too
| narrow to be useful? (Otherwise, why doesn't it already exist?)
| Wingy wrote:
| I think the most popular service like this is PikaPods.
| timmg wrote:
| I hadn't heard of it before. Thanks!
| jasongi wrote:
| The problem is that self hosted apps are rarely designed to be
| run serverless (why would they be?) and giving each app it'a
| own VPS or hosted container is going to price out the self-
| hosted crowd, to the point where you might as well be paying
| for some cloud software.
|
| In particular, self hosted apps usually are using relational
| databases or SQLite which need persistent disk so can't run
| serverless. They also sometimes require writing to physical
| disk instead of object storage like S3. Writing or rewriting
| apps to support serverless when they have no technical need to
| when self hosting would make things more complicated. Most CRUD
| frameworks used to write self-hosted apps do not work with
| NoSQL out of the box.
|
| Thing is, almost every self hosted app supports docker now and
| so if you like, install portainer on a VPS or NUC or raspberry
| pi and you'll be able to set up most self hosted apps easily
| without touching the command line.
| diggan wrote:
| > and giving each app it'a own VPS or hosted container is
| going to price out the self-hosted crowd,
|
| As far as I know, myself and other self-hosters run these
| sort of applications/services on home infrastructure or
| VPSes/dedicated/bare-metal where multiple applications
| usually share one instance. This could be done with docker,
| or cgroups, or countless other ways. I'm not sure if that's
| what you mean with a "hosted container" though, don't think
| I've heard about that before.
| satvikpendem wrote:
| Why would you use a new VPS for each application? Just
| dockerize and put all your apps on one VPS, which is what
| most self-hosters do.
| diggan wrote:
| > Is this a thing that I don't know about? Or is the market too
| narrow to be useful? (Otherwise, why doesn't it already exist?)
|
| I'm not super familiar with it, but I think what you describe
| was/is the goal of Sandstorm (https://sandstorm.org/).
|
| Then there are also efforts like YunoHost
| (https://yunohost.org/) which are kind of like that, gives SSO
| auth and everything out of the box for all the apps it
| supports.
|
| Even easier to use and less involved would be maybe what
| TrueNAS Core has in terms of apps support, which is essentially
| also "one-click install" of self-hosted applications, backed by
| local Kubernetes installation if I remember correctly.
|
| A more involved option for people who want to manage more
| themselves (both infrastructure and configuration-wise) is
| using NixOS, which is the approach I chose for my own local
| infrastructure at home. For the packages supported by NixPkgs,
| many applications are like ~4 lines of configuration to setup
| and get integrated with the rest of the apps you run.
|
| All of these options you can run in the cloud, bare-metal or at
| home servers, afaik.
| ncrmro wrote:
| They are now backed by docker after the Electric Eel update.
| diggan wrote:
| Had to look it up, you're talking about TrueNAS moving from
| Kubernetes to Docker, just for clarification,
| https://forums.truenas.com/t/the-future-of-electric-eel-
| and-...
|
| Huh, interesting as I literally moved from TrueNAS to NixOS
| because of two reasons 1) not liking something as
| complicated as Kubernetes for something as simple as home
| infrastructure and 2) to have a more reproducible setup.
|
| Happy to hear 1 won't be an issue for others in the future
| :)
| ozim wrote:
| Not sure if there is something like that tracker but I think
| you would like something like Linode marketplace:
|
| https://www.linode.com/marketplace/apps/
| kaladin-jasnah wrote:
| I used to hear that Yunohost was a good option, but I am not
| certain if this is still used by selfhosters today.
| zsoltkacsandi wrote:
| I was thinking of building a self-hosted app framework that
| manages the application lifecycle like how smartphones do.
|
| The only problem is that the existing apps wouldn't work with
| it.
| filcuk wrote:
| Ryot is an 'everything' tracker and has a good section for
| workouts. Very easy to deploy.
| satvikpendem wrote:
| Look for self-hosted PaaS, platform as a service. Coolify and
| Dokploy are good options, on Hetzner.
| bityard wrote:
| Yes! There are lots!
|
| Even decades ago, you could buy a web hosting account and
| simply click an icon to install Wordpress, CRMs, webmail
| clients, etc in your account and get started with minimal
| hassle. There are very likely many of these still around. Of
| course, if you are not a technical user, you are limited to
| what they provide.
|
| In the realm of containers, there are also many many choices
| for this. Most are open source, some are commercial. The
| problem with all that I know of, is that when you want to use
| an app that isn't in their "store", or when you want to use it
| differently than how they have packaged it, either you can't do
| it because it's not supported, or you essentially have to learn
| docker from scratch anyway.
| No1 wrote:
| Shared hosting providers have had such installers, typically as
| part of cPanel, for decades. An example would be Fantastico
| https://www.wikipedia.org/wiki/Fantastico_(web_hosting)
|
| You're not going to get per-request billing, but shared hosting
| is typically as cheap as you're going to get for "always-on"
| web hosting.
| RobotToaster wrote:
| Aren't most people interested in self hosting specifically to
| get away from the cloud?
| ugurs wrote:
| Are there any privacy-friendly wearables in the fitness tech
| scene? It seems like most wearable gadgets send data to remote
| servers, whenever possible.
| 0_____0 wrote:
| If you just need heart rate, you can pull data off a plain
| sensor to your phone or to a computer, they report over BLE.
| busymom0 wrote:
| What sensor would you recommend? I have tried Apple Watch and
| i really only care about the heart rate. But it doesn't poll
| the heart rate constantly unless in exercise mode. I wish I
| could just constantly track the heart rate every second.
| doix wrote:
| Most Garmin watches _can_ work without connecting to your phone
| and the app. It just stores the files locally on the watch and
| you can just connect it to your PC and read the files.
| Semaphor wrote:
| Bangle.js 2: https://banglejs.com/
| fiftyacorn wrote:
| Depends which sport - but golden cheetah lets you link a range
| of apps to your PC and store locally
| jcmfernandes wrote:
| I got to know more at your stand during last year's FOSDEM. Very
| cool project!
| neilv wrote:
| This app seems to _require_ a server. Invoke the app, and it
| presents a login screen, with links to "register" and to "use
| custom server".
|
| I suppose an alternative design would be to be on-device storage
| first, and then have an optional sync to a server (or
| laptop/desktop).
| gchamonlive wrote:
| Normally when talking about fitness tracking we are talking
| about embedded systems with very limited capacity both in terms
| of compute power and storage. You can use on-device storage to
| buffer tracking data, but any relevant and long term assessment
| and storage of the data has to be done off-site.
| davisr wrote:
| Absolute bullshit. Do you have any idea how little data there
| actually would be for this? KILOBYTES. A $20 Casio wristwatch
| could process this data.
| gchamonlive wrote:
| Data isn't only about being able to store and process it,
| but correlate to other metrics and reliably persist the
| result.
| davisr wrote:
| No, the "correlate" in this software is to put a mark on
| the chart when you ate certain things.
|
| > Track and annotate everything about your meals and
| workouts
|
| The rest is calculating calories from a meal (wow,
| multiplication) and charting.
|
| I could store and process this data with paper tape and a
| relay computer before my coffee was done brewing.
| worthless-trash wrote:
| Paper tape fitness app when ?
| satvikpendem wrote:
| This app is not about biometric fitness tracking as in smart
| watches, it is about manually tracking workout information.
| In that case, there is no need for a server to start with.
| nolroz wrote:
| Huh, I totally don't get this conjecture... What do you
| consider fitness tracking? In my mind a basic fitness app is
| essentially a replacement for a journal.
| yencabulator wrote:
| It's an Android/iOS app. On-device storage is measured in
| gigabytes, on-device CPU is very capable.
| AlienRobot wrote:
| Seems relevant to the blog post I just read yesterday!
|
| https://raphael.lullis.net/thinking-heads-are-not-in-the-clo...
| satvikpendem wrote:
| And what was posted yesterday on HN as well.
|
| https://news.ycombinator.com/item?id=43021677
| satvikpendem wrote:
| Indeed, this should be local first software [0], not self-
| hosted but server required.
|
| [0] localfirstweb.dev
| ashu1461 wrote:
| Generally firebase / supabase do a very good job of providing
| client sdks to access database directly without the need of a
| server.
|
| That way your data is still in cloud and you don't actually
| need a server.
| graemep wrote:
| Really? They do not run on servers? Where us the data
| stored then?
| satvikpendem wrote:
| This is unrelated to local first, just because you don't
| need to set up your own backend (not a server, because they
| are all servers) does not mean that the app works purely on
| the client.
| Vrondi wrote:
| That's what "self hosted" usually means.
| hk1337 wrote:
| To be fair, the app being posted is the server application
| which you can run locally. You do not need the phone
| application to use the web application.
|
| The mobile app is also open source https://github.com/wger-
| project/flutter
|
| I don't know how but I imagine you could build it and side load
| your own build to your phone?
| AiAi wrote:
| I tried to use it but I found the UI/UX confusing, with many
| exercises lacking images too. I support the idea but the workflow
| was not for me.
|
| I settled with Iron for iOS, which is also free software despite
| the platform it runs. Still looking for an equivalent on Android,
| the LiftLog app seems to have potential, but I think the UI is
| not that great.
| amonon wrote:
| I like Liftosaur, which appears to have an Android version on
| the Play store.
| AiAi wrote:
| Tried a little bit, it seems nice, but it is a bity janky on
| iOS. Feels like I'm using a web app, and some features
| require subscription/account.
| aucisson_masque wrote:
| i use fitnotes on android, it's not foss but there is no
| tracking and absolutely no internet connection if you don't
| enable cloud backup.
|
| the ui is old but effective.
___________________________________________________________________
(page generated 2025-02-13 23:00 UTC)