Post Millennium Renaissance
Interactive mountain bike tools built on real physics, and trail advocacy grounded in economic data. Castle Rock, CO.
Runden tracken, Scorekarten erfassen und das Handicap nach den WHS-Regeln des DGV berechnen.
Translation pending
Sports & fitnessTypeScript · CSSGitHub @kekederschnelle-artOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
Persönliche Golf-App: Runden live auf dem Platz tracken, alte Scorekarten mit Foto nachtragen, und daraus laufend einen eigenen Handicap-Index nach den Handicap-Regeln des DGV berechnen. Alle Daten liegen nur auf dem Gerät (IndexedDB). Kein Server, kein Account, keine Übertragung. Sicherung läuft über Export/Import einer JSON-Datei in den Einstellungen. Deployment auf Vercel: vercel --prod im Projektordner (oder das Repo in Vercel verbinden). vercel.json leitet alle Pfade auf index.html um, damit die Routen beim Neuladen funktionieren.Read the full README ↗
Persönliche Golf-App: Runden live auf dem Platz tracken, alte Scorekarten mit Foto nachtragen, und daraus laufend einen eigenen Handicap-Index nach den Handicap-Regeln des DGV berechnen.
Alle Daten liegen nur auf dem Gerät (IndexedDB). Kein Server, kein Account, keine Übertragung. Sicherung läuft über Export/Import einer JSON-Datei in den Einstellungen.
npm install
npm run dev # Entwicklungsserver
npm test # Rechenkern gegen die offiziellen Tabellen prüfen
npm run build # Produktionsbuild (PWA inkl. Service Worker)
Deployment auf Vercel: vercel --prod im Projektordner (oder das Repo in Vercel
verbinden). vercel.json leitet alle Pfade auf index.html um, damit die Routen
beim Neuladen funktionieren.
src/domain/whs.ts Rechenkern (reine Funktionen, keine UI, keine Datenbank)
src/domain/whs.test.ts Tests gegen die offiziellen Tabellen des GC Tutzing
src/domain/stableford.ts Punkte, GIR, Fairways, Rundenstatistik
src/domain/round.ts Brücke zwischen gespeicherten Runden und dem Rechenkern
src/data/db.ts Dexie/IndexedDB-Schema
src/data/courses/ Platzdaten
src/state/GolfContext.tsx Rechnet den kompletten Verlauf aus dem Rundenbestand
src/screens/ Übersicht, Neue Runde, Live-Scoring, Scorekarte, Record …
Der Handicap-Verlauf wird nie inkrementell fortgeschrieben, sondern bei jeder Änderung komplett aus allen Runden neu berechnet. Deshalb ist es unproblematisch, eine alte Scorekarte nachträglich einzutragen oder eine Runde zu korrigieren.
Quellen: DGV, „Handicap-Regeln" (Informationsblatt, Stand Januar 2025) und „WHS-Update für die Spielsaison 2026" (Stand März 2026).
| Größe | Formel |
|---|---|
| Netto-Doppel-Bogey | Par + erhaltene Handicap-Schläge + 2 |
| Gewertetes Bruttoergebnis (GBE) | jedes Loch höchstens Netto-Doppel-Bogey; nicht eingelochte Löcher zählen Netto-Doppel-Bogey |
| Score Differential | (113 / Slope) × (GBE − Course Rating − PCC) |
| Course Handicap (Spielvorgabe) | HCPI × (Slope / 113) + (Course Rating − Par), auf ganze Schläge |
| Handicap-Index | Durchschnitt der besten 8 der letzten 20 Score Differentials |
| 9-Löcher-Ergänzung | ((HCPI × 1,04) + 2,4) / 2, addiert auf den SD der 9 gespielten Löcher |
Bei weniger als 20 Ergebnissen gilt:
| Ergebnisse | gewertet | Anpassung |
|---|---|---|
| 1–3 | niedrigstes | −2,0 |
| 4 | niedrigstes | −1,0 |
| 5 | niedrigstes | 0 |
| 6 | Ø der 2 niedrigsten | −1,0 |
| 7–8 | Ø der 2 niedrigsten | 0 |
| 9–11 | Ø der 3 niedrigsten | 0 |
| 12–14 | Ø der 4 niedrigsten | 0 |
| 15–16 | Ø der 5 niedrigsten | 0 |
| 17–18 | Ø der 6 niedrigsten | 0 |
| 19 | Ø der 7 niedrigsten | 0 |
| 20 | Ø der 8 niedrigsten | 0 |
Ebenfalls umgesetzt:
PCC (Course Rating Korrektur) steht in der App fest auf 0. Der offizielle Wert wird erst am Abend zentral aus allen Ergebnissen des Tages berechnet und kann −1 bis +3 betragen (bei 9 Löchern halbiert).
Der berechnete Index ist ein Schatten-Index. Offiziell gilt allein der Wert, den der Heimatclub führt; er lässt sich in den Einstellungen eintragen und wird auf der Übersicht gegenübergestellt.
Aus der offiziellen Scorekarte und den Spielvorgaben-Tabellen der Saison 2026 (golfclub-tutzing.de → Platz → Spielvorgaben/Scorekarten). Par 72, Gelb 6041 m, Rot 5427 m.
| Abschlag | CR | Slope | Par |
|---|---|---|---|
| Gelb (Herren, 18) | 72,0 | 125 | 72 |
| Rot (Damen, 18) | 74,5 | 133 | 72 |
| Blau (Herren, 18) | 68,8 | 117 | 72 |
| Gelb 1–9 (Herren) | 36,9 | 130 | 37 |
| Gelb 10–18 (Herren) | 35,1 | 121 | 35 |
| Rot 1–9 (Herren) | 35,4 | 120 | 37 |
| Rot 10–18 (Herren) | 33,4 | 114 | 35 |
| Rot 1–9 (Damen) | 38,3 | 139 | 37 |
| Rot 10–18 (Damen) | 36,2 | 127 | 35 |
Zwei Dinge dazu:
Die grünen Abschläge (Par 65; Herren CR 57,2 / Slope 79, Damen CR 58,1 / Slope 95) fehlen: auf der veröffentlichten Scorekarte stehen Par und Länge je Loch nur für Gelb und Rot. Ohne die Pars je Loch wären Netto-Doppel-Bogey und Stableford falsch.
Die Tests in src/domain/whs.test.ts prüfen den Rechenkern gegen die vollständige
Spielvorgaben-Tabelle für Gelb sowie Stichproben für Rot, Blau, Grün und die 9-Löcher-Tabelle.