Planleggingsverktøy for fotballøkter bygget på Next.js App Router og Zustand. Prosjektet kombinerer klubbens egne øvelser med importerte biblioteker (UEFA, DBU, tiim.no m.fl.) og lar trenerteamet filtrere, favorisere og sette sammen økter med tilpasset utstyrs- og kampforberedelse.
npm install
npm run devÅpne http://localhost:3000 for treningssiden. /kamp viser kampforberedelser og taktikk, /ordliste beskriver begreper.
Før du åpner PR eller deler bygget, kjør alltid:
npm run lint # ESLint med Next.js-config
npm run build # Prod-bundle for verifisering- Øvelsesbibliotek: Alle øvelser ligger i
src/data/. Custom‑øvelser som legges til via UI persisteres i Zustand‐store og hydreres automatisk. - Filtre og søk:
src/components/Filters.tsxstyrer tema-, kilde- og spillerantallsfiltre. Tema- og kildevalg påvirker alleExerciseListforekomster. - Øktplan:
SessionTimelinegrupperer valgte øvelser i faste bolker, håndterer drag & drop, utskrift og deling. - Kampverktøy: MatchPrep, UEFASeksjon og FormasjonerSeksjon bruker data fra
src/data/uefa*.
| Kommando | Beskrivelse |
|---|---|
npm run dev |
Lokal utvikling med hot reload |
npm run build |
Prod-bundle |
npm run start |
Server prod-bundle |
npm run lint |
ESLint med Next.js config |
- Banedimensjoner (SVG/diagrammer):
docs/PITCH_DIMENSIONS.md - Øvelsesdata (kategorier, temaer, kilder og koder):
docs/EXERCISE_CATEGORIES.md
src/
app/ // Next.js routes
components/ // UI-moduler (ExerciseManager, SessionTimeline, osv.)
data/ // Øvelses- og kampdata
store/ // Zustand (sessionStore)
hooks/ // Delte hooks
- Legg til tester for filterlogikk og highlight-flow.
- Dokumenter prosess for å importere nye datakilder (
src/data/*).
Kjør npm run prod:sjekk for en full pipeline (lint uten scripts, build og tester) før endringer deles.