weegschaal-app/README.md
eddy ed714af8d1 feat: add MeasurementDetailScreen, 365-day charts, and edit support
- New MeasurementDetailScreen with wijzigen/verwijderen
- WeightChart now supports 30 and 365 days
- NewMeasurementScreen now handles both create and edit
- Updated README to match current code
- Add build-toolchain documentation
- Ignore *.apk build artifacts
2026-07-14 09:14:59 +02:00

2 KiB

Weegschaal App

React Native (Expo) app voor het handmatig invoeren van meetgegevens van een slimme weegschaal. Data wordt lokaal opgeslagen in SQLite en gesynchroniseerd met Nextcloud via WebDAV.

Meetwaarden

  • Gewicht (kg)
  • BMI
  • Vetpercentage (%)
  • Vetmassa (kg) — automatisch berekend
  • Spierpercentage (%)
  • Spiermassa (kg) — automatisch berekend
  • Buikvet (index)
  • Stofwisseling in rust (kcal)

Schermen

  • Dashboard — laatste meting in een kaart + drie grafieken (gewicht, vetmassa, spiermassa) met eigen y-as-schaal, te schakelen tussen 30 en 365 dagen
  • Nieuwe meting / Meting wijzigen — datumkiezer bovenaan (standaard vandaag), formulier vooraf ingevuld met waarden van de laatste meting. Ook te gebruiken om een bestaande meting te bewerken. Opslaan-knop altijd in beeld (buiten ScrollView). Bij opslaan wordt automatisch gesynchroniseerd met Nextcloud
  • Meting detail — alle meetwaarden in een kaartweergave, met knoppen om de meting te wijzigen of te verwijderen (verwijderen roept ook sync aan)
  • Historie — FlatList gesorteerd op ingevoerde datum (nieuwste bovenaan), pull-to-refresh
  • Instellingen — WebDAV configuratie (URL, gebruikersnaam, wachtwoord met oogje voor tonen/verbergen), handmatige sync, WebDAV-credentials wissen met bevestigingsdialoog

Ontwikkeling

npm install
npx expo start

Scannen met Expo Go op Android of iOS.

Synchronisatie

Data wordt opgeslagen als weegschaal/measurements.json in je Nextcloud WebDAV. Vul in het Instellingen scherm het volgende in:

  • URL: https://<jouw-nextcloud>/remote.php/dav/files/<gebruikersnaam>/
  • Gebruikersnaam: je Nextcloud gebruikersnaam
  • Wachtwoord: je Nextcloud app-wachtwoord

Bij sync worden lokale en externe metingen samengevoegd (last-write-wins op basis van updatedAt). De map weegschaal/ wordt automatisch aangemaakt via MKCOL indien deze nog niet bestaat.

Testen

npm test

Licentie

Public domain (Unlicense)