Skip to content

Quickstart

This quickstart demonstrates the smallest useful SkeinRank path: dictionary → text → canonical values. It does not require the governance API, UI, PostgreSQL, Elasticsearch, or background workers.

For the full platform beta with the governance console, bindings, enrichment jobs, snapshots, and Search Playground, use the Docker beta quickstart.

Save this as company_dictionary.json:

{
"profile_name": "infra_incidents",
"profile_description": "Small infrastructure incident dictionary",
"terms": [
{
"canonical_value": "kubernetes",
"slot": "TOOL",
"aliases": ["k8s", "kube", "kuber"]
},
{
"canonical_value": "postgresql",
"slot": "DATABASE",
"aliases": ["pg", "postgres", "psql"]
}
],
"profile_stop_list": [],
"global_stop_list": []
}
Terminal window
skeinrank validate-dictionary company_dictionary.json
Terminal window
skeinrank extract "k8s rollout uses pg database" \
--text \
--dictionary company_dictionary.json

Expected canonical values:

["kubernetes", "postgresql"]
Terminal window
skeinrank canonicalize "k8s rollout uses pg database" \
--text \
--dictionary company_dictionary.json

Expected output:

kubernetes rollout uses postgresql database
from skeinrank import load_dictionary, extract_terms, canonicalize_text
dictionary = load_dictionary("company_dictionary.json")
result = extract_terms(
"k8s rollout uses pg database",
dictionary=dictionary,
)
print(result.canonical_values)
canonicalized = canonicalize_text(
"k8s rollout uses pg database",
dictionary=dictionary,
)
print(canonicalized.text)

Why this path is the public MVP

It shows the core value without needing a full platform deployment. The UI, PostgreSQL store, and Elasticsearch enrichment workflow can be introduced after the end-to-end case is tested.