Changes for page Schwarmspeicher Electrify
Last modified by Patrizia Gurschka on 2026/09/10 14:58
From version 21.2
edited by Patrizia Gurschka
on 2026/09/10 12:48
on 2026/09/10 12:48
Change comment:
Auto-saved during real-time collaboration
To version 17.2
edited by Patrizia Gurschka
on 2026/09/10 12:40
on 2026/09/10 12:40
Change comment:
Auto-saved during real-time collaboration
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 1 removed)
Details
- Page properties
-
- Content
-
... ... @@ -14,17 +14,12 @@ 14 14 15 15 ))) 16 16 17 -== Überblick == 18 18 19 -**Schwarmspeicher Electrify **unterstützt den gesamten Projektlebenszyklus: Standortidentifikation, Genehmigungen, Projektsteuerung und Dokumentation — für beide Use-Cases parallel, über einen Umschalter in der Seitenleiste. 20 20 19 +== Übersicht == 21 21 22 - == Architektur==21 +**Schwarmspeicher Electrify **unterstützt den gesamten Projektlebenszyklus: Standortidentifikation, Genehmigungen, Projektsteuerung und Dokumentation — für beide Use-Cases parallel, über einen Umschalter in der Seitenleiste. 23 23 24 -[[image:1789037109962-994.png]] 25 - 26 -Zusätzlich übernimmt nginx im Frontend-Container TLS-Terminierung und same-origin-Routing (/auth, /rest, /storage, /realtime, /functions → supabase-kong) — dadurch läuft die App ohne CORS- oder Private-Network-Access-Probleme im Browser 27 - 28 28 == Technologie-Stack == 29 29 30 30 **Frontend: **React 18 · TypeScript · Vite · Tailwind CSS · shadcn/ui · React Router · React Query · Leaflet + leaflet.markercluster (Kartendarstellung) · Recharts (Diagramme) · XLSX (Excel-Import/-Export) ... ... @@ -31,6 +31,34 @@ 31 31 32 32 **Backend: **Supabase (self-hosted) — PostgreSQL, Authentication, Storage, Edge Functions, Row Level Security (RLS) 33 33 29 +== Projektstruktur == 30 + 31 +|((( 32 +📁 src/ 33 + 34 +📁 components/ UI-Komponenten (Schwarmspeicher + CoLocation*-Pendants) 35 + 36 +📁 pages/ Seiten der Anwendung 37 + 38 +📁 hooks/ Datenzugriffe und Business-Logik 39 + 40 +📁 integrations/ Supabase Client 41 + 42 +📁 types/ TypeScript-Modelle 43 + 44 +📁 lib/ Hilfsfunktionen (u.a. mapCoordinates.ts) 45 + 46 +📁 supabase/ 47 + 48 +📁 migrations/ SQL-Migrationen (inkl. komplettes PV-Co-Location-Schema) 49 + 50 +📁 functions/ Edge Functions 51 +))) 52 + 53 +== Use-Case-Umschalter == 54 + 55 +Zwei Buttons oben in der Seitenleiste ("Schwarmspeicher" / "PV-Co-Location"). Welcher Use-Case aktiv angezeigt wird, leitet sich direkt aus der aktuellen URL ab (Hook useUseCase.tsx, /pv-colocation/*-Pfade vs. Rest) — nicht aus einem gespeicherten Zustand. Dadurch zeigt die Seitenleiste nach Login oder direktem Aufruf eines Links immer konsistent den richtigen Use-Case. 56 + 34 34 == Hauptfunktionen == 35 35 36 36 === 1. Dashboard === ... ... @@ -135,6 +135,8 @@ 135 135 * In FlaecheVerpachtenPage.tsx sind Firmenname und Telefonnummer aktuell Platzhalter (Rateware). Vor dem Livegang unbedingt durch die echten Kontaktdaten ersetzen. 136 136 ))) 137 137 161 + 162 + 138 138 == Routing == 139 139 140 140 |**Pfad**|**Seite**|**Use-Case**|**Login nötig** ... ... @@ -157,6 +157,8 @@ 157 157 |/pv-colocation/stockend|Stockende Standorte|PV-Co-Location|ja 158 158 |/flaeche-verpachten|Landingpage „Fläche verpachten"|—|NEIN – öffentlich 159 159 185 + 186 + 160 160 == Datenzugriff == 161 161 162 162 Der Zugriff erfolgt über Custom Hooks, die sämtliche Kommunikation mit Supabase kapseln: ... ... @@ -183,6 +183,8 @@ 183 183 useUseCase() useAuth() 184 184 ))) 185 185 213 + 214 + 186 186 == Supabase == 187 187 188 188 **Authentication: **Login, Passwortänderung, Rollenverwaltung. ... ... @@ -197,10 +197,14 @@ 197 197 198 198 **Storage: **zwei Buckets — dokumente (Schwarmspeicher) und co-dokumente (PV-Co-Location). 199 199 200 -== Use-Case-Umschalter == 201 201 202 - ZweiButtons oben in derSeitenleiste ("Schwarmspeicher" / "PV-Co-Location"). Welcher Use-Case aktiv angezeigt wird, leitet sich direkt aus deraktuellen URL ab (Hook useUseCase.tsx, /pv-colocation/*-Pfade vs. Rest) — nicht aus einem gespeicherten Zustand. Dadurch zeigt die Seitenleiste nach Login oder direktem Aufruf eines Links immer konsistent den richtigen Use-Case.230 +== Architektur == 203 203 232 +[[image:1789017284336-190.png||height="353" width="762"]] 233 + 234 +Zusätzlich übernimmt nginx im Frontend-Container TLS-Terminierung und same-origin-Routing (/auth, /rest, /storage, /realtime, /functions → supabase-kong) — dadurch läuft die App ohne CORS- oder Private-Network-Access-Probleme im Browser 235 + 236 + 204 204 == Offene Punkte / zu verifizieren == 205 205 206 206 |((( ... ... @@ -212,6 +212,8 @@ 212 212 * KPI-Zuordnung im PV-Co-Location-Forecast (Netzantrag = kWp, die übrigen drei Meilensteine = kW) ist eine Annahme — bei Bedarf auf eine einheitliche Einheit umstellen. 213 213 ))) 214 214 248 + 249 + 215 215 == Server == 216 216 217 217 Das Projekt liegt unter /mnt/data/schwarmspeicher/schwarmspeicher-electrify_lokal und läuft in einem eigenständigen Docker-Compose-Stack (schwarmspeicher-electrify_lokal).
- 1789037109962-994.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.gurschkap - Size
-
... ... @@ -1,1 +1,0 @@ 1 -60.0 KB - Content