A comprehensive data governance and management platform built for Databricks Unity Catalog.
Ontos provides enterprise teams with the tools to organize, govern, and deliver high-quality data products following Data Mesh principles and industry standards like ODCS (Open Data Contract Standard) and ODPS (Open Data Product Specification).
Group and manage related Databricks assets (tables, views, functions, models, dashboards) as cohesive, consumable products with clear ownership and lifecycle management.
Define formal specifications for data assets with schema definitions, quality rules, SLOs, and semantic meaning following the ODCS v3.0.2 standard.
Register and group existing data assets across systems (Unity Catalog, Snowflake) and environments (dev, staging, prod), bridging physical assets to formal contracts.
Organize data work using Domains, Teams, and Projects aligned with your organizational structure and data mesh architecture.
Link technical data assets to business concepts through a knowledge graph, enabling semantic search and maintaining a shared vocabulary.
Define and enforce governance policies using a declarative DSL (Domain-Specific Language). Run automated compliance checks with configurable actions (tagging, notifications, enforcement).
Enable Data Stewards to formally review and approve assets before production promotion, with AI-assisted analysis and full audit trails.
Expose your data governance platform to AI assistants via the Model Context Protocol (MCP), enabling natural language queries and automation.
Ontos is designed to run as a Databricks App:
- Frontend: React + TypeScript with Tailwind CSS and Shadcn UI
- Backend: Python + FastAPI with SQLAlchemy ORM
- Database: PostgreSQL (or Databricks Lakebase in production)
- Integration: Native Databricks SDK integration for Unity Catalog operations
- Python 3.10 - 3.12
- Node.js 18+
- Yarn (v1.x Classic)
- Hatch (Python build tool)
- PostgreSQL (for local development)
# Clone the repository
git clone https://github.com/larsgeorge/ontos.git
cd ontos
# Install frontend dependencies
cd src/frontend
yarn install
# Copy and configure environment
cd ../..
cp .env.example .env
# Edit .env with your configurationTerminal 1 - Frontend:
cd src/frontend
yarn dev:frontendTerminal 2 - Backend:
cd src
yarn dev:backend- Frontend: http://localhost:3000
- Backend API: http://localhost:8000
- API Docs: http://localhost:8000/docs
databricks bundle deploy --var="catalog=app_data" --var="schema=app_ontos"
databricks apps deploy <app-name>| Document | Description |
|---|---|
| User Guide | Comprehensive guide for end users |
| Configuring | Environment variables, database setup, and deployment |
| Contributing | Development setup, commit guidelines, and release process |
| API Docs | Interactive API documentation (when running locally) |
| Compliance DSL Guide | Quick start for writing compliance rules |
| Compliance DSL Reference | Complete DSL syntax reference |
Ontos supports role-based access control with predefined roles:
| Role | Description |
|---|---|
| Admin | Full system access |
| Data Governance Officer | Broad governance oversight |
| Data Steward | Review and approve contracts/products |
| Data Producer | Create and manage data products |
| Data Consumer | Discover and use data products |
| Security Officer | Security and entitlements management |
ontos/
βββ src/
β βββ backend/ # FastAPI backend
β β βββ src/
β β β βββ common/ # Shared utilities
β β β βββ controller/# Business logic managers
β β β βββ db_models/ # SQLAlchemy models
β β β βββ models/ # Pydantic API models
β β β βββ repositories/ # Database access
β β β βββ routes/ # API endpoints
β β βββ alembic/ # Database migrations
β βββ frontend/ # React frontend
β β βββ src/
β β βββ components/# UI components
β β βββ views/ # Page components
β β βββ hooks/ # Custom React hooks
β β βββ stores/ # State management
β β βββ types/ # TypeScript definitions
β βββ docs/ # Documentation
β βββ scripts/ # Build and utility scripts
βββ docs/ # Additional documentation
βββ CONTRIBUTING.md # Contributing guidelines
βββ README.md # This file
Ontos implements and integrates with these standards:
- ODCS - Open Data Contract Standard (v3.0.2)
- ODPS - Open Data Product Specification
- MCP - Model Context Protocol for AI integration
We welcome contributions! Please see our Contributing Guide for:
- Development setup instructions
- Commit message conventions (we use Conventional Commits)
- Versioning and release process
- Code style guidelines
- Pull request process
This project is licensed under the Apache Software License 2.0 - see the LICENSE.txt file for details.
Version: 0.4.0
Maintained by: Databricks
