Web und API
app.py verbindet die Flask-Routen. Öffentliche JSON-Endpunkte liegen in api_public.py, Seiten in templates/. Starten Sie hier, wenn Sie einen Nutzerweg oder API-Aufruf verfolgen.
github.com/Open-LEG-ch/openleg
OpenLEG ist das öffentliche App-Repo für Schweizer Lokale Elektrizitätsgemeinschaften. Der Code ist offen, die Datenquellen sind nachvollziehbar, und produktive Secrets bleiben ausserhalb des öffentlichen Repos.
Laufende Anwendung
Diese Aufnahme stammt aus der echten Demo. Öffnen Sie den Ablauf, prüfen Sie das Verhalten und starten Sie dieselbe App danach lokal.
Daten
Smart-Meter-Daten bleiben innerhalb jeder LEG. Sie werden nicht verkauft und nicht für Dritte aggregiert.
Lizenz
Wer eine veränderte Version über ein Netzwerk anbietet, muss den Nutzenden den entsprechenden Quellcode gemäss Lizenz zugänglich machen.
Betrieb
Selbst betreiben auf eigener Infrastruktur oder Gehostet auf openleg.ch ohne eigenen technischen Betrieb.
Installieren Sie OpenLEG direkt, wenn Sie wissen, was Sie tun. Der Installer erstellt lokale Zugangsschlüssel und startet App, PostgreSQL und Redis mit Docker. Ihre Messdaten bleiben in Ihrer lokalen PostgreSQL-Datenbank.
Für macOS und Linux mit Docker Compose, curl und OpenSSL.
curl -fsSL https://openleg.ch/install.sh | bash
Laden Sie das Skript zuerst herunter, lesen Sie es und starten Sie es danach selbst.
curl -fsSL https://openleg.ch/install.sh -o install-openleg.sh
less install-openleg.sh
bash install-openleg.sh
Für einen festen Checkout, den Sie vor Installation und Updates selbst prüfen.
git clone https://github.com/Open-LEG-ch/openleg.git
cd openleg
./scripts/openleg install
Hier liegen Produktcode, Tests, Templates, öffentliche Datenmodelle, API und CI. Das Repo soll lesbar, prüfbar und einfach zu forken sein.
Produktionsbetrieb, Host-Inventar, Secrets, Incident-Notizen und interne Strategie bleiben privat. So bleibt der App-Code offen, ohne produktive Infrastruktur offenzulegen.
Routen, Formulare, Gemeindeprofile, Rangliste und JSON-API.
Gemeindedaten, PV-Anlagen, Tarife, Registrierungen und Audit-Daten.
Cache und kurzfristige technische Zustände.
TLS, Domains und Reverse Proxy vor der Flask-App.
Für technische Nutzer
Wer einen Fehler verfolgt oder einen Pull Request plant, findet hier den passenden Einstieg.
app.py verbindet die Flask-Routen. Öffentliche JSON-Endpunkte liegen in api_public.py, Seiten in templates/. Starten Sie hier, wenn Sie einen Nutzerweg oder API-Aufruf verfolgen.
database.py besitzt Verbindungsaufbau und Migrationen. Fachlich zusammengehörige Abfragen liegen in store/ und bleiben über database.py kompatibel erreichbar.
billing_engine.py verarbeitet zugeordnete Viertelstundenwerte und erzeugt einen prüfbaren Entwurf. Bezug erscheint als positive consumer_charge, Einspeisung als negative producer_credit. store/billing.py speichert Periode, Preise und Positionen. Messdatenimport, Mitgliederzuordnung, CLI-Befehl für einen Abrechnungslauf und definitive Rechnungsdokumente sind noch kein durchgängiger Ablauf.
Tests liegen in tests/. Neue Logik beginnt mit einem fehlschlagenden Test. Vor einem Pull Request muss scripts/tdd_cycle.sh gate vollständig durchlaufen. Kleine PRs können wir schneller prüfen.
Die englische und deutsche Übersicht im README enthält Startbefehle, Repo-Grenzen und Links zur Architektur.
OpenLEG verbindet öffentliche Energiedaten mit nachvollziehbarer Logik. Die Solarnutzungs-Rangliste nutzt einen deterministischen Export aus BFE Anlagenregister, BFE Sonnendach und BFS Regionalporträts.
data/public, Import über scripts/load_pv_data.pyEin Befehl auf Ihrer eigenen Hardware. Docker genügt, ein Raspberry Pi reicht für den Anfang.
curl -fsSL https://openleg.ch/install.sh | bash
Danach verwalten Sie die Box mit einem Befehl, importieren Ihre Messdaten lokal und verbinden Nachbarn über ein privates Netzwerk ohne offene Ports.
Oder manuell aus dem Quellcode:
git clone https://github.com/Open-LEG-ch/openleg.git
cd openleg
cp .env.example .env
docker compose up -d
Lokale Stromgemeinschaften brauchen Vertrauen. Gemeinden, Bewohner und Entwickler sollen prüfen können, welche Daten genutzt werden, welche Annahmen in Berechnungen stecken und wie die Plattform betrieben werden kann. OpenLEG verkauft keine Bürgerdaten.
OpenLEG bindet sich nicht an einzelne Netzbetreiber. Code und Datenmodell sind neutrale Infrastruktur, nutzbar unabhängig davon, welcher Verteilnetzbetreiber eine Gemeinde bedient.