#5252nd of 146 in Backends, databases and hostingFor data and documents, data analysis
harlequin
Terminal SQL IDE with adapters for DuckDB, SQLite, Postgres and other databases
- Stars
- 6.5k
- License
- MIT
- Last commit
- Nov 2026
- Last release
- Oct 2026
- Language
- Python
5,946 on 21 Apr 20266,519 on 10 Nov 2026
From GitHub's daily star counts.
Checked on GitHub.
Overview
Harlequin is a Python terminal application for writing and running SQL, browsing a data catalog and exporting results. It ships with DuckDB and SQLite adapters, and other databases such as Postgres, MySQL/MariaDB and ODBC connect through separately installed adapter packages. A companion CLI, hsql, runs queries headlessly for scripts and agents, with read-only and timeout options.
Who it is for: Developers and data engineers who query databases from the terminal
Strengths
- DuckDB and SQLite adapters ship in the box; opens in-memory or file databases directly
- Adapter plug-ins cover other databases, installable as extras like harlequin[postgres]
- hsql companion CLI offers --read-only, --timeout and catalog search for agent use
- Profiles in config files can reference environment variables, keeping credentials out of shared configs
Weaknesses
- Terminal UI only; no web or desktop interface
- Adapters install as separate Python packages into the same environment
- Not an MCP server; agent access goes through the hsql CLI
- Homebrew formula is community-maintained and less tested than the Python installs
What it needs
- no GPU
- Needs Python 3.9+, uv (recommended installer)
What changed
- v2.17.0 ↗ (opens in a new tab)Breaking
“The DuckDB and SQLite adapters' single-dash -readonly CLI option has been removed. Use -r or --read-only.”
- v2.16.2 ↗ (opens in a new tab)Breaking
“The DuckDB and SQLite adapters' single-dash -readonly CLI option has been removed. Use -r or --read-only.”
- v2.16.1 ↗ (opens in a new tab)Breaking
“The DuckDB and SQLite adapters' single-dash -readonly CLI option has been removed. Use -r or --read-only.”
From the release notes. No flag means the note does not say so, not that the upgrade is safe.
Also in Backends, databases and hosting
See all 146| Rank | Project | Score |
|---|---|---|
| 1 | bunJavaScript and TypeScript runtime with bundler, test runner and package manager | 93 out of 100 |
| 2 | appwriteBackend with auth, databases, storage, functions and an MCP server for agents | 93 out of 100 |
| 3 | ormTypeScript ORM for PostgreSQL and MongoDB with a plugin SPI and agent skills | 93 out of 100 |
| #4 | strapiHeadless CMS that generates REST and GraphQL APIs from content models | 92 out of 100 |
| #5 | traefikHTTP reverse proxy and load balancer that auto-discovers routes from orchestrators | 92 out of 100 |