Koala UI is a React + FastAPI workspace to manage datasets, inspect tables, run reconciliation jobs, and export enriched CSV files.
- Dataset and table management with PostgreSQL persistence
- Manual and automatic NE/LIT column classification
- Moose-powered auto-identification and DPV column annotation
- Reconciliation with multiple providers:
- Lion Linker
- Crocodile
- ReFinED
- Wikidata Reconciler
- Reconciliation scopes:
- Single cell subset
- Selected rows
- Current page
- Whole table
- Shared per-cell result view across reconcilers
- Candidate exploration dialog with type details and Wikidata links
- NE column type ranking (triggered job with sampling)
- Score-based sorting:
- Selected NE column score
- Row average score across NE cells
- Enriched CSV export with selectable attributes:
id,name,description,types,score,match
- Frontend: React + Material UI
- Backend: FastAPI
- Database: PostgreSQL
- Containerized with Docker Compose
- Clone the repository
git clone https://github.com/enRichMyData/koala_ui
cd koala_ui- Create your local environment file
cp .env.template .env- Start the app
docker-compose up --build- Open:
- Frontend:
http://localhost:3000 - Backend:
http://localhost:5001
Use the Profile page to configure credentials and service URLs per user:
- Shared LLM provider/model/endpoint/API key (reused by Moose and Lion Linker)
- Lion Linker:
- base URL
- API key
- Lamapi endpoint/token/KG/candidate count
- Crocodile:
- base URL
- API key
- ReFinED:
- base URL
- API key
- Wikidata Reconciler:
- base URL
- API key (optional)
- Moose:
- base URL
- API key
Sensitive keys are stored server-side and only exposed as "has key" flags in the UI.
Admin users also get a dedicated User Admin tab in Profile to create users, update roles/passwords, and delete users.
- Open a table
- Pick provider, scope, columns, and top-k
- Run reconciliation
- Koala polls job status and syncs paginated results from provider endpoints
- Results are persisted and mapped back to original table coordinates
- Click linked NE cells to inspect/select candidates
If results already exist, Koala shows a confirmation dialog before re-running.
- Sort by score on a selected NE column
- Sort by row average score across NE cells
- NIL / missing score entries are treated as
0for sorting - Filter by linked NE semantic types
- Pagination stays enabled for large tables
Export CSV supports:
- Base table export
- Enriched export with selectable reconciliation attributes
Export enrichment uses the latest stored result per NE cell across available reconcilers.
Koala includes a /docs page in the frontend navigation with:
- profile setup checklist
- reconciliation workflow
- ranking/sorting notes
- export behavior summary
MIT (see LICENSE).
