Verktyg

Energy Toolkit erbjuder två verktyg för energiprognoser. Båda följer samma designfilosofi (en Python-generator, ett data-API och en interaktiv webbfrontend) men hanterar olika frågor om energisystemet.

Gemensam designfilosofi

Båda verktygen är byggda kring samma trelagers-arkitektur. Detta är inte tillfälligt. Det är ett medvetet designval som gör varje verktyg oberoende forkbart, driftsättningsbart och anpassningsbart samtidigt som de delar en gemensam mental modell.

Generator

En Python-motor som tar in indata och konfiguration, kör en modell, och producerar strukturerad output. Generatorn är den enda delen som kräver domänexpertis.

  • Demand: Historisk data + transformeringar → Parquet
  • Generation: Väder + efterfrågan + PyPSA → kapacitetsplaner

API

Ett datalager som serverar generatoroutput genom standardiserade endpoints. Statisk JSON för metadata, dynamiska frågor för tidsserier och scenariodata.

  • Demand: OpenAPI 3.1 + DuckDB på Parquet
  • Generation: Filbaserat API (lokalt eller HTTP-server)

Frontend

En interaktiv webbapplikation för att utforska data. Diagram, kartor, scenariojämförelse, designad för flera målgrupper från allmänhet till domänexperter.

  • Demand: SvelteKit + LayerChart + Mapbox GL
  • Generation: Streamlit + Plotly + Folium

Designade för att forkas

Verktygen är inte SaaS-produkter. De är startpunkter. Forka ett repository, byt in dina egna data och modeller, och driftsätt. Arkitekturen är designad för att göra detta enkelt.

Flexibel indata

  • Valfri region: Tillhandahåll dina egna GeoJSON-gränser och efterfrågedata. Demand-verktyget levereras med svenska data; anpassa det för ditt land eller din region.
  • Valfri scenariomodell: Generatorerna är modulära. Ersätt transformeringsfunktionerna med dina egna prognosmodeller utan att störa datapipelinen.
  • Konfigurationsdriven: Scenarier, geografier, segment och parametrar definieras i konfigurationsfiler (YAML eller JSON). Ändra konfigurationen, regenerera, och hela stacken uppdateras.

Flexibel driftsättning

  • Kör lokalt: Båda verktygen fungerar på en laptop utan molntjänster. Bra för utveckling och intern användning.
  • Driftsätt till molnet: Båda verktygen kör på valfri standardmolnplattform. Ta med din egen infrastruktur; verktygen är fria från leverantörsberoenden.
  • Statisk eller dynamisk: Frontends genererar helt statiska webbplatser som kan serveras av valfri statisk host eller CDN. API:er kan köras som containrar eller servera förbyggda filer.

Mognadsgrad

De två verktygen är i olika utvecklingsstadier. Båda är funktionella och driftsatta, men Demand-verktyget har en mer mogen ramverksarkitektur.

Demand

  • Full-stack-ramverk med tydlig separation
  • Omfattande testtäckning (60+ tester)
  • CI/CD-pipeline med GitHub Actions
  • Dokumentation, kodstandarder, felsökningsguider
  • Flerspråksstöd (Paraglide i18n)
🌱

Generation

  • Fungerande generator med PyPSA-optimering
  • Streamlit-dashboard med scenariokontroller
  • Flexibelt API (lokalt filsystem eller HTTP-server)
  • Docker-driftsättningsstöd
  • Planerat: migration till SvelteKit-frontend
  • Planerat: utökad dokumentation