aelveborn / Wii-Scale

Turns your Wii Balance Board into a scale and presents your weight on a responsive website. Runs Linux and works on your Raspberry Pi.
http://aelveborn.github.io/Wii-Scale/
GNU General Public License v2.0
116 stars 27 forks source link

Exporting data to CSV #12

Open ekianjo opened 7 years ago

ekianjo commented 7 years ago

Would be great if you can add such a function so that the data can be used in other software as well!

aelveborn commented 7 years ago

Absolutly, this is on the roadmap and I think this is a very important feature. I would need som help with this since my time is limited. Should be able to build this on the frontend.

mo-g commented 6 years ago

This would be very useful. To-do me to look into it, but no promises. :)

It would also seem to me that this would be better generalized as an import-export. I have old data from my previous similar program, saved as CSV, that it would be good to import.

mo-g commented 6 years ago

Hmm... Having now seen a datafile with some points in it, I'm less worried about the import function - it's json (:heart:) and very simple syntax, so if anyone is capable of installing and running this application, they're probably capable of manually importing that data. It would still be a nice to have, but it's not as needed as the export.

sahoahfoa commented 5 years ago

I'll take a look at importing as it's difficult to do otherwise. I'd like a settings area before I start though. I don't want the UI to get cluttered.

mo-g commented 5 years ago

Not that I'm trying to create feature creep...

You're obviously working on @ribbons fork at the moment - which includes some commits IIRC to add international configuration - kg vs lbs vs stone etc. The problem is these are currently set via command line, and are system-wide. The settings panel for import obviously needs to be per-user, but the data format doesn't currently support per-user settings. I would argue that there's a need to restructure the format of the json data files to be organised by user, rather than by timestamp.

{
  "Users" : {
    "Mog" : {
      "Values" : [
        {
          "Weight" : ohdear,
          "Datetime" : wednesday
        }, 
        {
          "Weight" : gettingworse,
          "Datetime" : thursday
        }
      ],
      "Settings" : {
        "Weightformat" : "lbs",
        "bgcolor" : "pink"
      }
  }
}

Or something along those lines.

We can probably just create a settings pane in one PR, and leave that change for another day - but it's worth bringing up at the start!