# 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.