An Open Energy Ontology (OEO)-aligned database, REST API, and React 19 web frontend for energy generation, storage, transmission, and conversion technologies. Designed to feed real, traceable data into energy modelling frameworks.
opentech-db is a domain-specific data repository that provides standardised, source-traced technical and economic parameters for energy system components. Developed at the Deggendorf Institute of Technology (DIT) THD-Spatial-AI group, it serves as a single source of truth that multiple energy modelling frameworks can query programmatically.
Key capabilities:
min, max, source, and year┌─────────────────────────────────────────────────────────────┐
│ React 19 SPA (Frontend) │
│ TechGrid · DetailsModal · WorldMap · TimeSeriesViewer │
│ ContributorWorkspace · AdminPanel · ScraperPanel │
└──────────────────────┬──────────────────────────────────────┘
│ HTTP / REST
┌──────────────────────▼──────────────────────────────────────┐
│ FastAPI Backend (main.py) │
│ /technologies /adapt /timeseries /auth /scraper │
│ /admin /debug /ontology /health │
└──────┬─────────────────────────────────┬────────────────────┘
│ │
┌──────▼──────────┐ ┌────────────▼──────────────────┐
│ Data Layer │ │ Scraper Pipeline │
│ data/*.json │ │ OpenAlex · Semantic Scholar │
│ Pydantic v2 │ │ NREL ATB · IRENA · Crossref │
│ LRU cache │ │ APScheduler · LLM extract. │
└─────────────────┘ └───────────────────────────────┘
The API is publicly accessible — no setup required for read-only access:
| Interface | URL |
|---|---|
| Swagger UI | http://localhost:8000/docs |
| ReDoc | http://localhost:8000/redoc |
| OpenAPI JSON | http://localhost:8000/openapi.json |
| Health check | http://localhost:8000/health |
| Section | Description |
|---|---|
| Overview | Design principles, technology coverage, data sources |
| Getting Started | Installation, Docker, environment variables, quick start |
| API Reference | All REST endpoints with request/response examples |
| Integration Guide | curl, Python, PyPSA, Calliope code examples |
| Data Model | Pydantic schema, OEO alignment, ParameterValue |
| Data Formats | JSON formats, adding new technologies |
| Framework Adapters | PyPSA and Calliope adapters, CRF formula |
| Scraper Pipeline | Automated data acquisition from academic sources |
| Time-Series Catalogue | Hourly profiles, contributor upload |
| Authentication | ORCID OAuth, Supabase auth, admin setup |
| Web Frontend | React SPA views, state management, build instructions |
Code is released under the MIT License. Data files and documentation content are released under CC BY 4.0. See LICENSE and ATTRIBUTIONS.md in the repository root.