Initial commit: Gravl MVP med onboarding

This commit is contained in:
2026-01-31 23:33:20 +01:00
commit 032cca851d
3461 changed files with 634124 additions and 0 deletions
+58
View File
@@ -0,0 +1,58 @@
# Gravl - Träningsapp
En enkel träningsapp för att följa PPL-program (Push/Pull/Legs) med progressionsspårning.
## Features
- 📋 **PPL Program** - 6-dagars Push/Pull/Legs split
- 📊 **Träningslogg** - Logga vikt/reps för varje set
- 📈 **Progression** - Automatiska viktrekommendationer
- 📱 **Mobilanpassad** - Fungerar perfekt på telefon
- 🌙 **Mörkt tema** - Bekvämt för gymmet
## Tech Stack
- **Frontend:** React (Vite) + CSS
- **Backend:** Node.js/Express
- **Database:** PostgreSQL
- **Container:** Docker med nginx
## Quick Start
```bash
# Initiera databasen
psql -h localhost -U postgres -d gravl -f db/init.sql
# Starta med Docker Compose
cd /workspace/gravl
docker compose up -d --build
```
## Åtkomst
- **URL:** https://gravl.homelab.local
- **API:** https://gravl.homelab.local/api
## API Endpoints
| Endpoint | Method | Beskrivning |
|----------|--------|-------------|
| `/api/health` | GET | Hälsokontroll |
| `/api/programs` | GET | Lista alla program |
| `/api/programs/:id` | GET | Hämta program med dagar |
| `/api/days/:id/exercises` | GET | Hämta övningar för en dag |
| `/api/logs` | GET | Hämta träningsloggar |
| `/api/logs` | POST | Logga ett set |
| `/api/progression/:id` | GET | Få viktrekommendation |
## Databasschema
- `programs` - Träningsprogram
- `program_days` - Dagar i programmet (Push A, Pull A, etc.)
- `exercises` - Övningar (Bench Press, Squat, etc.)
- `program_exercises` - Kopplar övningar till dagar med sets/reps
- `workout_logs` - Loggade träningsset
## Progression
Appen rekommenderar att öka vikten med 2.5kg när du når max reps på alla sets.