Changes for page Schwarmspeicher Electrify
Last modified by Patrizia Gurschka on 2026/09/10 14:58
From version 21.1
edited by Patrizia Gurschka
on 2026/09/10 12:45
on 2026/09/10 12:45
Change comment:
There is no comment for this version
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,16 +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 21 -== Architektur==19 +== Übersicht == 22 22 23 - [[image:1789037109962-994.png]]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. 24 24 25 -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 26 - 27 27 == Technologie-Stack == 28 28 29 29 **Frontend: **React 18 · TypeScript · Vite · Tailwind CSS · shadcn/ui · React Router · React Query · Leaflet + leaflet.markercluster (Kartendarstellung) · Recharts (Diagramme) · XLSX (Excel-Import/-Export) ... ... @@ -30,6 +30,34 @@ 30 30 31 31 **Backend: **Supabase (self-hosted) — PostgreSQL, Authentication, Storage, Edge Functions, Row Level Security (RLS) 32 32 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 + 33 33 == Hauptfunktionen == 34 34 35 35 === 1. Dashboard === ... ... @@ -134,6 +134,8 @@ 134 134 * In FlaecheVerpachtenPage.tsx sind Firmenname und Telefonnummer aktuell Platzhalter (Rateware). Vor dem Livegang unbedingt durch die echten Kontaktdaten ersetzen. 135 135 ))) 136 136 161 + 162 + 137 137 == Routing == 138 138 139 139 |**Pfad**|**Seite**|**Use-Case**|**Login nötig** ... ... @@ -156,6 +156,8 @@ 156 156 |/pv-colocation/stockend|Stockende Standorte|PV-Co-Location|ja 157 157 |/flaeche-verpachten|Landingpage „Fläche verpachten"|—|NEIN – öffentlich 158 158 185 + 186 + 159 159 == Datenzugriff == 160 160 161 161 Der Zugriff erfolgt über Custom Hooks, die sämtliche Kommunikation mit Supabase kapseln: ... ... @@ -182,6 +182,8 @@ 182 182 useUseCase() useAuth() 183 183 ))) 184 184 213 + 214 + 185 185 == Supabase == 186 186 187 187 **Authentication: **Login, Passwortänderung, Rollenverwaltung. ... ... @@ -196,10 +196,14 @@ 196 196 197 197 **Storage: **zwei Buckets — dokumente (Schwarmspeicher) und co-dokumente (PV-Co-Location). 198 198 199 -== Use-Case-Umschalter == 200 200 201 - 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 == 202 202 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 + 203 203 == Offene Punkte / zu verifizieren == 204 204 205 205 |((( ... ... @@ -211,6 +211,8 @@ 211 211 * KPI-Zuordnung im PV-Co-Location-Forecast (Netzantrag = kWp, die übrigen drei Meilensteine = kW) ist eine Annahme — bei Bedarf auf eine einheitliche Einheit umstellen. 212 212 ))) 213 213 248 + 249 + 214 214 == Server == 215 215 216 216 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