diff --git a/doc/design-forslag-m2.html b/doc/design-forslag-m2.html new file mode 100644 index 0000000..d6c4c6a --- /dev/null +++ b/doc/design-forslag-m2.html @@ -0,0 +1,645 @@ +FitnessDroid — designförslag + + + +
+
+
FitnessDroid · Milstolpe 2 · Designförslag v2
+

En passpilot i fickan — inte webben i mindre format

+

Nytt tänk: appen byggs runt själva gympasset, inte runt flikar. + Mellan seten har du svettiga händer och 90 sekunder — allt i passläget är därför + stora tryckytor, förifyllda värden och en vilotimer som sköter sig själv, även på + låsskärmen. Runt det: en hemskärm som startar pass på ett tryck, och Android-ytor + som webben aldrig kan nå.

+
+
LÄGE 1 · STARTAHemskärmen + Favoritpass, fritt pass, widget och appgenvägar — max två tryck till första setet.
+
LÄGE 2 · KÖRPassläget + En övning i taget, set loggas med ett tryck, vilotimern tar över — appen coachar, du lyfter.
+
LÄGE 3 · FÖLJ UPPStatistik & PB + Kroppskarta som visar var veckans volym hamnat, trender och PB-historik.
+
+
+ + +
+
1 / 6
+

Passläget — en övning i taget, ett tryck per set

+

Hela skärmen ägnas åt övningen du står vid. Svep i sidled mellan + övningarna i passet. Värdena är alltid förifyllda från förra passet plus + progressionsregeln — stämmer allt trycker du bara på gröna knappen.

+ +
+
+
+
19:24▲ ▮
+
+
+ + + Push A + 24:31 +
+
+
Bänkpress + Övning 3 av 8 · Bröst, triceps · Förra passet: 4×8 @ 77,5 kg
+ +
Set 1 · 80,0 kg × 8 · RPE 7
+
Set 2 · 80,0 kg × 8 · RPE 8
+ +
+
SET 3 AV 4
+
+
+ 80,0kg · ±2,5+
+
+ 8reps+
+
+
RPE 78910
+
✓ Logga set — vilan startar
+
+ +
+ + Nästa: Lutande hantelpress · 3×10 @ 28 kg
+
+
+
+
Passläget · aktivt set
+
+ +
+
+
19:26▲ ▮
+
+
VilaPush A · 26:04
+
+
1:07av 1:30
+
+ −15 s + +15 s + Hoppa över +
+
Härnäst: Set 4 av 4 · 80,0 kg × 8
+ Sista setet på bänken — sen lutande hantelpress
+
+
+
+
+
Vilan tar över skärmen
+
+ +
+
1

Ett tryck per set. Vikt och + reps förifylls från förra passet + progressionsregeln (API:t har redan + lastExercisePerformance). Stämmer det: tryck ✓. Annars ±-knappar — + aldrig tangentbord för standardfallet.

+
2

Vilan sköter sig själv. Loggat + set → timern startar, skärmen växlar till ringen, telefonen vibrerar när det + är dags. Längden hämtas per övning (litet API-tillägg, se sist).

+
3

Svep = nästa övning. Ingen + lista att scrolla i mitt i passet. Prickraden överst visar var i passet du är; + långtryck öppnar överblicken där du kan ändra ordning eller lägga till övningar.

+
4

PB firas direkt — slår du + ett personbästa på ett set får du konfetti och en 🏆-notis i samma sekund, + inte när passet är slut.

+
+
+ +
+
+
Minispelare — passet följer med i hela appen (som Spotify)
+
+ +
Push A · Bänkpress
Vila 0:47 kvar · set 4 av 4
+ ÖPPNA +
+
Notis på låsskärmen — timern utan att ta upp telefonen ur fickan
+
+
FitnessDroid · pågår
+ Vila 0:47 — sen set 4 av 4 +

Bänkpress 80,0 kg × 8 · Push A 26:04

+
+15 sLOGGA SETPAUSA PASS
+
+
+
+
5

Lämna passläget utan att tappa + passet. Kollar du statistik mitt i passet ligger minispelaren kvar ovanför + navigeringen. Notisen med timer-åtgärder gör att telefonen kan ligga kvar i + fickan mellan seten — det här är appens största övertag över webben.

+
+
+
+ + +
+
2 / 6
+

Hemskärmen — startmotorn

+

Öppnar du appen med ett pass igång åker du rakt in i passläget. + Annars: starta på ett eller två tryck.

+ +
+
+
+
19:24▲ ▮
+
+
Tjena BjörnVecka 30 · 2 pass · 3 veckors streak 🔥
+
Starta fritt pass
+
FavoritpassAlla mallar
+
+
+
Push A
+
Bröst · Axlar · Triceps
+
▶ Starta
+
+
+
Ben & core
+
Ben · Mage
+
▶ Starta
+
+
+
Rygg
+
Rygg · Biceps
+
▶ Starta
+
+
+
+
+
Veckans muskler
+
Mest bröst & triceps — benen släpar efter
+ +
+
Senaste passHistorik
+
+
+
Push A
mån 21/7 · 52 min · 4 890 kg
+ 2 PB
+
+
+
+
+
Hemskärmen · inget pass igång
+
+ +
+
1

Fritt pass = ett tryck. + Passet skapas direkt och övningsväljaren öppnas. Namn kan sättas efteråt — + inga formulär mellan dig och första setet.

+
2

Favoritpass = två tryck. + API:ts favoritpass + mallar, med auto-progressionen förifylld.

+
3

Veckans muskler — en liten + kroppskarta som teaser för statistiken, och en knuff om vad som är underjobbat. + Trycker du på kortet öppnas hela kartan (sektion 5).

+
4

Pågår ett pass öppnas appen + direkt i passläget — hemskärmen visas bara när inget är igång. Därför + behövs inget "fortsätt"-kort: appen minns åt dig.

+
+
+
+ + +
+
3 / 6
+

Övningsväljaren — sök, muskelfilter, favoriter först

+

Muskelgrupper som chips med ikoner; vald grupp fäller ut sina + muskler som en andra rad. Brickorna (KG/REPS/TID/M) kommer från övningens + tracks-flaggor och styr sedan set-loggningens fält.

+ +
+
+
+
19:24▲ ▮
+
+
+ + Lägg till övning
+ +
+ Alla + Bröst + Rygg + Ben + Axlar + Armar +
+
+ Alla i Rygg + Latsen + Trapezius + Ländrygg +
+
+
+
Marklyft
Rygg · Ben · senast 77,5 kg
+ KGREPS
+
+
Latsdrag
Latsen · senast 65 kg
+ KGREPS
+
+
Skivstångsrodd
Rygg · Biceps
+ KGREPS
+
+
Pullups
Latsen · kroppsvikt
+ REPS
+
+
Ryggresning
Ländrygg
+ REPSTID
+
+
+
+
+
Övningsväljaren · Rygg valt
+
+ +
+

Favoriter alltid överst + (API:ts favoritövningar), med senaste vikten som förhandsinfo så du slipper + minnas var du låg.

+

Ikoner istället för foton: + API:t saknar övningsbilder, så appen buntar vektorikoner per muskelgrupp — + offline, blixtsnabba, temafärgade. Vill du hellre ha en kroppskarta där + vald muskel tänds som filter är det samma dataunderlag — säg till vilken + du föredrar (kartan finns i sektion 5).

+
+

Ny övning på plats: hittas + inte övningen visas "Skapa övningen ‹sökordet›" längst ned — grunddatan + behöver aldrig besökas mitt i ett pass.

+
+
+
+ + +
+
4 / 6
+

Utanför appen — noll tryck innan gymmet

+

Det webben aldrig kan: starta och styra pass utan att ens öppna appen.

+
+
+
Hemskärms-widget (4×2)
+
+
FitnessDroid3 v streak · 2 pass denna vecka
+
+ ▶ Push A + ▶ Ben & core + Fritt pass +
+
+
Långtryck på appikonen — genvägar
+
+
▶ Starta Push A
+
▶ Starta fritt pass
+
📊 Veckans statistik
+
+
+
+
Skivkalkylatorn — tryck på vikten i passläget
+
+
+

80,0 kg på stången

+
Stång 20 kg · per sida:
+
+ + + +
+
Per sida: 20 + 10 + 2,5 + 5 — dina skivor + ställs in en gång under Profil. Räknar även ut närmsta möjliga vikt.
+
+
+
+
+ + +
+
5 / 6
+

Kroppskartan — var hamnade veckans volym?

+

Statistikens signaturvy: en stiliserad figur där varje muskelgrupp + färgas efter träningsvolymen i perioden (datat finns redan i API:ts workoutStats). + Samma karta kan återanvändas som muskelväljare i övningsfiltret om du hellre vill + det än chips.

+ +
+
+
+ + + + + + + + + + + + + + + + + +
Framsida
+
+
+ + + + + + + + + + + + + + + +
Baksida
+
+
+
+

Färgskalan är volym i perioden + — här syns direkt att bröst/underarmar fått mest och att ben & mage släpar. + Tryck på en muskel → övningarna och seten bakom siffran.

+
Mindre + + + Mer volym
+

Figuren är + medvetet stiliserad (byggd av former, inte anatomisk) — den blir tydlig i litet + format, temafärgas och kräver inga bildlicenser. Vill du ha en mer anatomisk + siluett går det, men liten och skarp slår detaljerad och grötig på en telefon.

+
+
+
+ + +
+
6 / 6
+

Navigeringen — chrome runt tre lägen

+

Med passläge + minispelare behövs färre flikar än webben har: + Hem · Historik · Statistik · Profil med startknappen i mitten (förslag B + från förra rundan). PB och kroppskartan bor i Statistik, grunddata och + skivinställningar under Profil. Fritt pass, favoriter, widget och appgenvägar + gör att flikarna nästan aldrig behövs på väg in i ett pass — de är för + uppföljningen.

+ +

Små API-tillägg som lyfter appen

+

Inget av detta blockerar bygget — appen kan falla tillbaka på + vettiga defaultvärden tills de finns.

+
+ + + + + + + + + + + + + +
TilläggVad det gerStorlek
MuscleGroup.iconKeyServern pekar ut vilken ikon en muskelgrupp har istället för att appen + gissar på namnsträngar ("Bröst" vs "Chest"). En kolumn + fält i GraphQL.LITEN
ExerciseType.defaultRestSecondsAuto-vilotimern vet hur länge just den övningen vilar (90 s bänk, 180 s + marklyft). Fallback i appen: 90 s. Kolumn + fält + med i mallexport.LITEN
Lift/Set: clientId (UUID)Offline-läge på gymmet: appen kan köa set lokalt och synka i efterhand utan + dubbletter när samma mutation skickas om. Unik kolumn + upsert-logik.MEDEL · roadmap
ExerciseType.imageUrlFrivillig påbyggnad om du senare vill ha riktiga foton/anatomibilder per + övning — appen visar dem när de finns, ikoner annars.LITEN · valfri
+ +
+

Det jag behöver från dig

+
    +
  1. Passläget: köper du "en övning i taget + svep + vilo-takeover", eller + vill du hellre se hela passet som scrollbar lista med allt synligt?
  2. +
  3. Muskelfiltret: chips med ikoner (sektion 3) eller kroppskartan + (sektion 5) som väljare — eller båda (chips snabbt, karta bakom en knapp)?
  4. +
  5. Android-ytorna: vilka vill du ha i första versionen — notistimer, + widget, appgenvägar, skivkalkylator? (Notistimern föreslår jag ingår direkt, + resten kan komma stegvis.)
  6. +
  7. API-tilläggen: ok att jag gör iconKey + defaultRestSeconds i + gym-API:t (byggs och rullas ut via befintliga CI:t)?
  8. +
+
+