Schwarmspeicher Electrify

Version 1.1 by Dimitri Rupp on 2026/07/08 12:34

🔋 Schwarmspeicher Electrify

Information

Zweck: Webbasiertes Projektmanagementsystem zur Verwaltung von Batterie-Großspeicherprojekten in Deutschland und Österreich — vom Standort über Genehmigungen bis zur Projektsteuerung und Dokumentation.

Ăśbersicht

Schwarmspeicher Electrify unterstĂĽtzt den gesamten Projektlebenszyklus: Standortidentifikation, Genehmigungen, Projektsteuerung und Dokumentation.

Technologie-Stack

Frontend: React 18 · TypeScript · Vite · Tailwind CSS · shadcn/ui · React Router · React Query · React Hook Form · Leaflet (Kartendarstellung) · Recharts (Diagramme)

Backend: Supabase — PostgreSQL, Authentication, Storage, Edge Functions, Row Level Security (RLS)

Projektstruktur

src/
├── components/     UI-Komponenten
├── pages/          Seiten der Anwendung
├── hooks/          Datenzugriffe und Business-Logik
├── integrations/   Supabase Client
├── types/          TypeScript-Modelle
└── lib/            Hilfsfunktionen

supabase/
├── migrations/
├── functions/
└── config.toml

Hauptfunktionen

Dashboard

Zentrale Ăśbersicht ĂĽber Projekte, Status, offene Aufgaben, Kennzahlen und Projektfortschritt (Komponente Dashboard.tsx).

Projektverwaltung

Verwaltung aller Batteriespeicherprojekte: anzeigen, Detailansicht, bearbeiten, Projektstatus, Meilensteine. Komponenten: ProjectTable, ProjectDetail.

Standortverwaltung

Standorte anlegen, bearbeiten, importieren, Historie, Dokumente. Komponenten: StandortDetail, CreateStandortForm, StandortImportDialog, StandortDokumente.

Gemeinden

Verwaltung der Gemeinden (Komponente CreateGemeindeForm). Zusätzlich existiert eine Supabase Edge Function zum Abruf von NÖ-Gemeinden (supabase/functions/fetch-noe-gemeinden).

Kartenansicht

Darstellung aller Standorte auf einer interaktiven Karte (Leaflet, React Leaflet). Komponenten: ProjectMap, LocationPickerMap.

Potenzialanalyse

Bewertung möglicher Standorte. Komponenten: PotenzialTabelle, PotenzialPage.

Pipeline

Verwaltung von Vorprojekten. Komponenten: VorprojektePipeline, VorprojektTimeline.

Meilensteinverwaltung

Projektfortschritt ĂĽber Meilensteine. Komponenten: MeilensteinMatrix, MeilensteinQuickEdit.

Aufgabenverwaltung

Projektbezogene Aufgaben. Komponenten: TaskManager, TasksPage. Hook: useTasks().

Dokumentenverwaltung

Zu jedem Standort können Dokumente verwaltet werden. Komponenten: StandortDokumente, PartnerDokumente.

Standortpartner

Verwaltung von Projektpartnern. Komponenten: StandortpartnerManager, StandortpartnerTable.

Benutzerverwaltung

Anmeldung, Passwortänderung, Rollen. Komponenten: AuthProvider, ProtectedRoute, BenutzerPage, ChangePasswordDialog. Backend: Supabase Authentication.

Audit Log

Nachvollziehbarkeit von Änderungen (Seite AuditLogPage).

Routing

SeiteBeschreibung
DashboardStartseite
ProjekteProjektĂĽbersicht
PipelineVorprojekte
PotenzialeStandortpotenziale
KarteKartenansicht
ForecastForecast
AufgabenAufgabenverwaltung
Audit LogÄnderungsprotokoll
BenutzerBenutzerverwaltung
LoginAnmeldung

Datenzugriff

Der Zugriff erfolgt über Custom Hooks, die sämtliche Kommunikation mit Supabase kapseln:

useStandorte()
useGemeinden()
useVorprojekte()
useTasks()
usePotenzialDaten()
useStandortpartner()
useMonatsziele()

Supabase

Authentication: Login, Passwortänderung, Rollenverwaltung.

Datenbank: Wird ĂĽber SQL-Migrationen verwaltet (supabase/migrations/). Die Migrationen definieren Tabellen, Policies und Datenbankfunktionen.

Edge Functions:

  • fetch-noe-gemeinden — lädt Gemeinden aus Niederösterreich
  • manage-users — Benutzerverwaltung

Architektur

flowchart TD
    FE["React Frontend"] --> RQ["React Query"]
    RQ --> SC["Supabase Client"]
    SC --> AUTH["Auth"]
    SC --> DBS["Database"]
    SC --> ST["Storage"]
    DBS --> EF["Edge Functions"]

Server

Das Projekt liegt unter /mnt/data/schwarmspeicher/schwarmspeicher-electrify_lokal und läuft in einem Docker-Compose-Stack (schwarmspeicher-electrify_lokal).

Erreichbar unter http://schwarmspeicher.spl-tele.com:8200 — mit VPN und im SPL-TELE-Netzwerk.