The Musher - Fra regneark til App
De første linjene i regnearket begynner å ta form.

The Musher - Fra regneark til App

Hvor lang er veien fra regneark til app?

TL;DR

The Musher er en app for hundetrening og hundevelferd.

Google Spreadsheet

I utgangspunktet hadde jeg ikke tenkt å lage en app i det hele tatt. Hundekjøring var relativt nytt for meg på dette tidspunktet. Jeg ante ikke hva jeg trengte å notere eller hva som var viktig å huske på. Derfor begynte jeg å notere i et Google Spreadsheet.

De første linjene i regnearket begynner å ta form.

De første linjene i regnearket begynner å ta form.

Etter å ha notert i noen uker skjønner jeg fort at det er mye informasjon å holde styr på. 10 hunder i trening blir fort uoversiktlig.

Eksempel på informasjon som ble notert:

  • Når spiser de ikke opp maten sin?
  • Når har de løpetid?
  • Hvem er vaksinert med alle vaksinene som kreves for løp?
  • Treninger. Lengde, høydemeter, fart, temperatur, varighet, hvile og kommentarer.
  • Hvor ofte er de skadet?
  • Hvor lenge må de stå i ro pga en skade?

PWA

Etter en sesong med registrering med data i regneark ser jeg fort at dette kan bli upraktisk å holde styr på. I tillegg ønsker jeg å dele informajonen med alle i familien som driver med hundene.

Jeg bestemmer meg derfor for å lage en PWA for all denne informasjonen.

Prinsippene og teknologivalgene er enkle og jeg har mål om å holde meg mest mulig til standard malverk og prinsipper. Keep it simple står veldig sterkt.

Jeg velger MongoDB, Node.js og Express på serversiden til å servere REST APIene.

På klientsiden velger jeg Preact, Bootstrap 4 og Font Awesome. Ingen spesialtilpasninger. Kun basis layout og stiler fra Bootstrap i tillegg til ikoner fra Font Awesome.

Forsiden

Oversikt over det viktigste på ett sted.

Forsiden Oversikt over det viktigste på ett sted.

Trening

Oversikt over inneværende måned.

Forsiden trening Oversikt over inneværende måned.

Oversikt over alle treninger.

Liste over treninger Oversikt over alle treninger.

Interaktivt kart, vær og analyse av kjøre og stopptid.

Treningsdetaljer - del 1 Interaktivt kart, vær og analyse av kjøre og stopptid.

Analyse av stigning, fart og energiforbruk. Dette brukes for å beregne belastningsindeksen.

Treningsdetaljer - del 2 Analyse av stigning, fart og energiforbruk. Dette brukes for å beregne belastningsindeksen.

Oversikt over energiforbruk på denne treningen. Dette er også omregnet i fôrmengder.

Treningsdetaljer - del 3 Oversikt over energiforbruk på denne treningen. Dette er også omregnet i fôrmengder.

Hunder

Oversikt over alle hundene med mulighet for filtrering.

Forsiden hunder Oversikt over alle hundene med mulighet for filtrering.

Oversikt over treningsplan, treninger, selestørrelse, vaksiner, alder og kjønn.

Detaljer for en hund - del 1 Oversikt over treningsplan, treninger, selestørrelse, vaksiner, alder og kjønn.

Oversikt over trening i forskjellige posisjoner og kalender over treninger.

Detaljer for en hund - del 2 Oversikt over trening i forskjellige posisjoner og kalender over treninger.

Kalender for hendelser for hunden.

Detaljer for en hund - del 3 Kalender for hendelser for hunden.

Team

Oversikt over alle teamene dine.

Forsiden team Oversikt over alle teamene dine.

Oversikt over type, ambisjonsnivå, treninger og treningsplaner.

Detaljer for team - del 1 Oversikt over type, ambisjonsnivå, treninger og treningsplaner.

Interaktivt kart med heatmap for dette teamet.

Detaljer for team - del 2 Interaktivt kart med heatmap for dette teamet.

Sammenligning med andre team av samme type og på samme ambisjonsnivå.

Detaljer for team - del 3 Sammenligning med andre team av samme type og på samme ambisjonsnivå.

Funksjoner

-