Skip to content

dlt-hub/dlt-kuzu-ontology

Repository files navigation

dlt-kuzu-ontology

REST API + live graph visualization for the dlt glossary ontology, backed by Kuzu graph DB.

Quick start (local)

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

docker build -t dlt-kuzu-ontology .
docker run -p 8000:8000 -v $(pwd)/../ontology:/data/ontology dlt-kuzu-ontology

API

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

Future: multiple ontologies

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.

Claude Code skill

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.

About

dlt glossary ontology service — Kuzu graph DB with FastAPI and D3 visualization

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors