REST API + live graph visualization for the dlt glossary ontology, backed by Kuzu graph DB.
cd dlt-kuzu-ontology
# Copy the Kuzu DB from highlights-factory
mkdir -p ontology
cp ../ontology/glossary_graph_kuzu_db ontology/
# Install and run
pip install .
python app.py
# → http://localhost:8000 (graph UI)
# → http://localhost:8000/docs (Swagger API docs)docker build -t dlt-kuzu-ontology .
docker run -p 8000:8000 -v $(pwd)/../ontology:/data/ontology dlt-kuzu-ontology| Method | Endpoint | Description |
|---|---|---|
| GET | / |
Live D3 graph visualization |
| GET | /api/graph |
Full graph as JSON |
| GET | /api/concepts |
List all concepts |
| GET | /api/terms |
List all terms |
| GET | /api/check?term=X |
Look up a term (exact, partial, alternative) |
| GET | /api/relationships |
List all relationships |
| POST | /api/concepts |
Add a concept |
| POST | /api/terms |
Add a term |
| PUT | /api/concepts/{name} |
Update a concept field |
| PUT | /api/terms/{name} |
Update a term field |
| POST | /api/relationships |
Add a relationship |
| DELETE | /api/concepts/{name} |
Remove a concept |
| DELETE | /api/terms/{name} |
Remove a term |
| GET | /api/changelog |
View the changelog |
The current deployment serves a single ontology. To support multiple ontologies (e.g. dlt, dlthub, runtime), prefix all API routes with /{ontology} and store each as a separate Kuzu DB under /data/ontology/{name}/. Auto-discover from subdirectories. Graph UI gets a landing page with a picker.
Use /update-ontology-remote from any dltHub workspace to update the ontology in plain English. The skill translates your description into API calls and asks for confirmation before executing.