Komparo

SNAPSHOT. VALIDATE.
PREVENT DRIFT.

A fast and standalone CLI tool written in Go to compare PostgreSQL database schemas. Detect divergences before they break your production environments.

Deploy with Confidence

Everything you need to manage schema drift

Komparo analyzes your entire database topology—tables, indexes, functions, and sequences—giving you immediate insight into what changed.

Deep PostgreSQL Inspection

Extracts metadata efficiently using targeted queries. Compare sequences, constraints, and more with high precision.

Visual Divergence Alerts

Instantly highlights structural differences. Know exactly what index is missing before your new release.

Blazing Fast Execution

Written natively in Go, Komparo compiles to a highly optimized single binary ensuring near-instant schema diffs.

Quick Start

Get up and running in minutes

1. Download CLI

Install Komparo globally on your machine using Go. Zero additional dependencies required.

go install github.com/rda-run/komparo@latest

2. Capture Expected Schema

Extract the exact structure of your reference database into a standard JSON file during your CI pipeline.

komparo snapshot \
  --db "postgres://user:pass@localhost:5432/ephemeral_db?sslmode=disable" \
  --out expected_schema.json

3. Validate Target Database

Compare the generated snapshot against your production database to instantly detect schema drifts.

komparo validate \
  --db "postgres://user:pass@prod-db.internal:5432/prod_db?sslmode=require" \
  --file expected_schema.json

Output Example

Komparo provides a clean, easily readable report if divergences are found.

⚠️ Schema Divergence Detected! STATUS TYPE OBJECT DETAILS Missing Column users.last_login_at Expected: timestamp Mismatch Column orders.total_amount Expected: numeric(10,2) | Actual: numeric(12,4) Mismatch Index idx_users_email Expected: Match | Actual: Differ Extra View vw_legacy_reports Actual: Exists