Essential Open API is a Python Flask API that provides dynamic access to classes, instances, and relationships from the Essential meta-model, compatible with Essential Utility API v3. It also enables repository publishing and real-time progress monitoring within Essential Open Source.
This project ships with a ready-to-use Docker setup. Follow the steps below to build and run the containerized API.
- Docker
- Docker Compose (v2 or newer)
docker compose buildThe command uses the Dockerfile in the repository root to install dependencies and configure the Flask application.
docker compose upThis starts the Flask API on port 5100 (mapped from the container). The container mounts the project directory, so local code changes are reflected immediately.
-
Stop services
docker compose down
-
Rebuild from scratch
docker compose build --no-cache
The demo/ directory contains a static HTML page that interacts with the API and demonstrates key endpoints:
- Configure the API base URL in the header field.
- Trigger repository publishing and monitor real-time progress with a progress bar.
- Inspect the
/api/classes/Currency/instancesendpoint response.
To view the demo, open demo/index.html in a browser (or serve the folder via a simple static server). Ensure the API is running and accessible from the configured base URL.
