Noureddine RAMDI / OrcaQ: a family-aware multi-database editor with safe AI assistance

Created Mon, 04 May 2026 10:23:01 +0000 Modified Sat, 23 May 2026 20:41:27 +0000

cin12211/orca-q

OrcaQ addresses a real pain point: managing multiple types of databases through a single interface without forcing them into a relational mold. Most database tools either focus on one database family or awkwardly try to treat key-value stores like Redis as if they were relational. OrcaQ’s family-aware shell architecture means it dynamically adapts its UI and workflows based on the database type, providing a smoother, more natural experience.

What orcaq does and how it works

OrcaQ is an open-source database editor built with Vue 3, Vite, and TypeScript for the frontend, distributed as a native desktop app via Tauri. It supports a range of popular databases including PostgreSQL, MySQL, MariaDB, Oracle, SQLite, and Redis.

The architecture centers around a family-aware shell that adjusts the activity bar items, sidebar panels, tabs, and route fallbacks depending on whether the database connection is SQL-family or Redis. This means that when connected to a SQL database, you get schema exploration, raw SQL editing with CodeMirror, ERD visualization, schema diff and migration generation, backup/restore, and role management.

For Redis, the UI shifts to key-value store operations, avoiding the relational model assumptions. This dual-mode approach is a practical architectural decision that respects the fundamental differences between these database families.

Under the hood, Tauri provides a lightweight native wrapper for the desktop app, keeping the footprint small compared to Electron, while Vue 3 and Vite enable a fast, reactive front-end experience. TypeScript enforces type safety across the codebase.

Four deployment paths are supported:

  • Desktop app builds for macOS, Linux, and soon Windows
  • Quick local run via npx orcaq
  • Local development using Bun and npm scripts
  • Docker container for clean local deployment

Technical strengths and design tradeoffs

The standout technical feature is the family-aware shell architecture. Instead of one-size-fits-all UI components, the app dynamically adapts its panels and workflows based on the database family. This avoids the common pitfall of forcing relational paradigms onto Redis or other key-value stores, which often leads to awkward or incomplete UX.

The UI components reflect this adaptability: activity bar items, sidebar panels, and tabs are conditionally rendered or configured to match the database context. Routes also fallback intelligently, providing a cohesive navigation experience.

The integrated AI agent, named Orca Agent, offers SQL generation, query explanation, and anomaly detection. The safety mechanism that requires explicit user confirmation before executing AI-generated mutation queries is a thoughtful guardrail, reflecting an understanding of real-world risks when mixing AI automation with destructive operations.

Using CodeMirror for raw SQL editing is a solid choice, offering rich text editing and syntax highlighting in a lightweight package.

Schema diff and migration generation add practical value for database maintainers, allowing them to track and apply schema changes safely.

Tradeoffs include the complexity of maintaining this dual-mode UI and ensuring feature parity where possible without forcing relational assumptions on Redis. The npx mode lacks support for SQLite file connections, requiring the desktop app for that workflow, which is a minor limitation but worth noting.

The codebase follows modern TypeScript practices and uses Vue 3’s composition API for clean component logic. The use of Tauri over Electron reduces the app’s resource footprint, although Windows support is still pending.

Quick start with orcaq

OrcaQ offers multiple straightforward ways to get started:

Desktop app

Download the latest build for macOS or Linux from the GitHub Releases page. Windows support is coming soon.

NPX quick run

For a quick local run without cloning the repo:

npx orcaq

This starts OrcaQ on http://localhost:9432. Note that npx mode does not support SQLite file connections.

Local development

For contributing or running from source:

git clone https://github.com/cin12211/orca-q.git
cd orcaq
bun install
npm run nuxt:dev

Docker

For a clean local deployment without installing Node.js tooling:

docker run -d \
  --name orcaq \
  --restart unless-stopped \
  -p 9432:9432 \
  cinny09/orcaq:latest

Open http://localhost:9432 in your browser.

verdict

OrcaQ is a practical tool for developers and DBAs who manage multiple database types and want a unified, family-aware interface that respects the differences between SQL and Redis. Its modular UI design and AI integration with safety checks make it a thoughtful choice for those seeking a lightweight yet versatile desktop database editor.

Limitations include incomplete Windows desktop support and some feature gaps in the npx mode (notably SQLite support). The family-aware UI approach requires careful maintenance to keep both SQL and Redis workflows smooth, but this is a worthwhile tradeoff for a better UX.

If you work with multiple database types and want a modern, adaptable tool with safe AI assistance, OrcaQ is worth trying out. The codebase is approachable for contributors, and the multiple deployment options fit diverse workflows.


→ GitHub Repo: cin12211/orca-q ⭐ 184 · TypeScript