Show HN: KvatchCLI – Query Multiple Data Sources with SQL(Postgres,CSV,APIs)


Hi HN! I’m launching Kvatch CLI v1.0.0-beta today — a tool that lets you query multiple data sources (Postgres, CSV, Google Sheets, APIs, etc.) as if they were a single SQL database.

Demo: https://github.com/kvatch-hub/kvatch-cli
Download: https://github.com/kvatch-hub/kvatch-cli/releases/tag/v1.0.0…

## Why I Built This

As a data engineer, I got tired of the “export-download-import-wrangle” dance every time I needed to join data from different sources. The usual workflow:

1. Export from Postgres
2. Download CSV from somewhere
3. Grab data from Google Sheets
4. Spend 3 hours in Python/Excel joining everything
5. Fix encoding issues
6. Realize you exported wrong columns
7. Repeat

It’s 2026. This shouldn’t be so hard.

## What It Does

Define data sources in YAML and query across them with standard SQL:

“`yaml
connectors:
– name: prod_db
type: postgres
connection: postgres://localhost/production

  - name: sales_data
    type: csv
    connection: ./sales.csv

datasets:
– name: analysis
query: |
SELECT u.name, s.revenue
FROM prod_db.users u
LEFT JOIN sales_data s ON u.id = s.user_id
“`

Run: `kvatch query –plan analysis.yaml`

Kvatch executes the query across sources and returns results — no exports, no intermediate files.

## Technical Approach

– Written in Go (single binary, ~12MB)
– Uses SQL federation (not ETL — queries sources directly)
– Local SQLite for caching/intermediate results
– Pluggable connector architecture
– Supports Postgres, MySQL, SQLite, CSV, JSON, Google Sheets, Git repos, REST APIs

Everything runs locally. Your data never leaves your machine.

## Current Status

Core engine is production-ready (tested with real datasets), but calling it “beta” because I want feedback before v1.0. Some UX polish still needed (diagnostics commands, better logging, etc.).

Supported platforms: macOS (Intel + Apple Silicon), Linux (x86_64 + ARM64), Windows.

## What’s Next

Building a paid “remote mode” for teams: shared plans, scheduled queries, web UI, access control. Local mode will stay free forever.

## Try It

“`bash
brew tap kvatch-hub/tap
brew install kvatch

# Or download: https://github.com/kvatch-hub/kvatch-cli/releases

kvatch init
kvatch query –plan examples/quickstart/plan.yaml
“`

Examples: https://github.com/kvatch-hub/kvatch-cli/tree/main/examples

Happy to answer questions! Feedback very welcome.



Source link

Leave a Reply

Your email address will not be published. Required fields are marked *