Tonto
Start Here

Tonto

Tonto is a textual language and toolchain for creating UFO-based OntoUML ontology projects.

Tonto logo

Tonto is a textual modeling language for creating well-founded ontologies based on the Unified Foundational Ontology (UFO) and OntoUML. It gives ontology projects a code-like workflow: source files, packages, imports, validation, generated artifacts, dependency management, and version control.

Use Tonto when you want ontology models that are readable as text, reviewable in Git, and supported by development tools such as VS Code, a CLI, diagram views, and package management.

Tonto in VS Code

A Tonto model edited with the VS Code extension

Project parts

The repository contains several packages that work together:

PackagePurpose
tonto-cliLanguage grammar, language server services, validators, transformations, and command-line workflows.
tonto VS Code extensionEditor integration published as Lenke.tonto, including commands, syntax support, views, and webviews.
tpmTonto Package Manager for Git-based ontology dependencies.
tonto-sprotty-webviewDiagram and webview implementation used by the VS Code extension.
sprotty-vscode packagesSprotty integration packages used by the extension.

Where to start

Start with the quickstart if you want to install the tools and create a model. If you already know OntoUML and only need syntax, go to packages and imports. If you are maintaining the repository, read package architecture.

Legacy references

The previous Docusaurus documentation and PDFs are still useful historical references:

This package is the updated documentation source for current Tonto projects.