queryark Svelte Themes

Queryark

Lightweight database IDE for 17 engines — SQL, NoSQL, graph, key-value, and analytics. One app for all your databases.

QueryArk icon

QueryArk

A fast, lightweight database IDE for developers.
One app for 17 database engines — SQL, NoSQL, graph, key-value, and analytics.

Release License CI


Supported Databases

SQL Analytics Document Wide Column Key-Value Graph
PostgreSQL Snowflake MongoDB Cassandra Redis Neo4j
MySQL BigQuery DynamoDB ScyllaDB
MariaDB ClickHouse
SQLite Redshift
MSSQL
CockroachDB

Features

Query Editor

  • CodeMirror 6 with multi-dialect SQL highlighting (PostgreSQL, MySQL, SQLite, MSSQL, Cassandra)
  • Schema-aware autocomplete (tables, columns, functions)
  • Query formatting, comment toggle, error highlighting
  • Multi-statement execution with multiple result sets
  • Query history and saved queries
  • EXPLAIN ANALYZE with visual tree view
  • Query cancellation

Data Grid

  • Virtual scrolling (100K+ rows)
  • Inline cell editing (double-click), bulk edit mode with undo/redo
  • Column sorting, filtering, resizing, reordering
  • Row selection, multi-row delete, row insertion
  • Type-aware editing (boolean checkbox, JSON textarea, NULL pill badges)
  • Copy/paste, copy as CSV/JSON/INSERT/Markdown
  • Context menu with filter-by-value

Schema Browser

  • Expandable tree: schemas > tables > columns, views, functions, sequences, enums
  • Table structure view with columns, indexes, foreign keys tabs
  • DDL viewer (CREATE TABLE) with copy button
  • Table creation, alteration, and index management GUIs with live DDL preview
  • Search/filter within the tree
  • Row count and table size stats

NoSQL Support

  • MongoDB / DynamoDB: document browsing, JSON viewer, insert/update/delete
  • Redis: type-aware viewer (string, list, set, hash, zset), scan/get/set/delete
  • Neo4j: label browser, relationship types, node data grid
  • Cassandra / ScyllaDB: CQL queries, schema browsing

Connection Management

  • Connection groups/folders with color coding
  • SSH tunneling (local port forwarding via russh)
  • SSL certificates (CA, client cert, client key)
  • OS keychain integration (macOS Keychain, Windows Credential Manager, Linux Secret Service)
  • Connection URL parsing (postgres://, mysql://, mongodb://, redis://, bolt://, sqlite:)
  • Connection pool tuning (pool size, idle timeout, acquire timeout)
  • Connection duplication

Data Export & Import

  • Export to CSV, JSON, SQL (INSERT statements), DDL
  • Import from CSV with bulk loading
  • Copy selected rows as CSV/JSON/INSERT/Markdown

Transaction Support

  • BEGIN / COMMIT / ROLLBACK controls in the UI
  • Supported for PostgreSQL, MySQL, MariaDB, SQLite, CockroachDB, Redshift

UI & UX

  • Dark theme (default) and light theme (Catppuccin Latte) with toggle
  • Tab system with drag-and-drop reordering, pinning, split panes
  • Command palette (Ctrl+P) with fuzzy search
  • Configurable keyboard shortcuts
  • Window state and session persistence
  • Settings modal (font sizes, page size, confirmations)
  • Auto-updater with in-app notifications

Installation

Download

Grab the latest release for your platform from GitHub Releases:

Platform Format
macOS (Apple Silicon) .dmg
macOS (Intel) .dmg
Windows .exe (NSIS installer) / .msi
Linux .deb / .rpm / .AppImage

Build from Source

Prerequisites:

# Clone the repository
git clone https://github.com/berbicanes/queryark.git
cd queryark

# Install frontend dependencies
npm install

# Run in development mode
npm run tauri dev

# Build production binary
npm run tauri build

Tech Stack

Layer Technology
Desktop runtime Tauri 2 (Rust)
Frontend SvelteKit 5, Svelte 5 runes, TypeScript
SQL editor CodeMirror 6
SQL drivers sqlx (PG, MySQL, SQLite), tiberius (MSSQL), clickhouse, snowflake-api, gcp-bigquery-client
NoSQL drivers mongodb, scylla, redis, neo4rs, aws-sdk-dynamodb
SSH tunneling russh
OS keychain keyring
Styling CSS variables, JetBrains Mono / Inter

Keyboard Shortcuts

Action Shortcut
Run query Ctrl+Enter
New query tab Ctrl+N
Close tab Ctrl+W
Next / Previous tab Ctrl+Tab / Ctrl+Shift+Tab
Command palette Ctrl+P
Toggle sidebar Ctrl+B
Toggle theme Ctrl+Shift+T
Save query Ctrl+S
Refresh schema F5
Format SQL Ctrl+Shift+F
Keyboard shortcuts Ctrl+K

All shortcuts are customizable in the shortcuts panel.

Project Structure

src/                        # Frontend (SvelteKit + TypeScript)
├── lib/
│   ├── components/         # UI components (editor, grid, modals, sidebar, tabs)
│   ├── services/           # Tauri IPC wrappers
│   ├── stores/             # Svelte 5 rune stores
│   ├── types/              # TypeScript types
│   └── utils/              # Formatters, SQL helpers
└── routes/                 # SvelteKit pages

src-tauri/                  # Backend (Rust)
├── src/
│   ├── commands/           # Tauri command handlers
│   ├── db/
│   │   ├── drivers/        # Database driver implementations (16 drivers)
│   │   ├── traits.rs       # DbDriver, SqlDriver, DocumentDriver, KeyValueDriver, GraphDriver
│   │   ├── pool.rs         # Connection pool manager
│   │   └── handle.rs       # DriverHandle enum
│   ├── models/             # Serde structs
│   └── error.rs            # AppError enum
└── Cargo.toml

Development

npm run dev              # Start Vite dev server (port 1420)
npm run build            # Build frontend
npm run tauri dev        # Run full Tauri app in dev mode
npm run tauri build      # Build production binary
npm run check            # TypeScript / Svelte type checking

Contributing

Contributions are welcome. Please open an issue first to discuss what you'd like to change.

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/my-feature)
  3. Commit your changes
  4. Push to the branch (git push origin feature/my-feature)
  5. Open a Pull Request

License

MIT

Top categories

Loading Svelte Themes