Documentation

A quick-start guide and the core workflows. For the complete, always-current reference, see the README on GitHub.

Getting started

Installation

Requires Python 3, pip, and access to a MySQL, PostgreSQL, or SQLite database.

macOS, via Homebrew:

brew install AdarshaGS/qforge/qforge

From source (any platform):

git clone https://github.com/AdarshaGS/QForge.git
cd QForge
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python main.py

First connection

On first launch, create a connection profile in the Connection Manager, optionally test it, then select Connect. For SQLite, choose SQLite and provide the database file path — host, port, username, and password aren't needed.

Running your first query

Open a query tab against your connection, write a SQL statement, and run it to see results in the grid below the editor. See SQL editor below for the full workflow.

Connections

MySQL & PostgreSQL

Connect through an SSH tunnel using a password or private key. Save, group, search, reorder, test, and reconnect connection profiles from the Connection Manager.

SQLite

Choose SQLite and provide the database file path directly — no host, port, username, or password required.

Connection troubleshooting

Double-check the host, port, and credentials, and that the database accepts remote connections. For an SSH-tunneled connection, verify the private key path and its file permissions. Still stuck? See Support.

SQL editor

Running queries

Write single statements or multi-statement scripts, with syntax highlighting, schema-aware completion, formatting, and snippets.

Query tabs & history

Query history and pinned tabs restore across sessions, so you can pick up where you left off.

Result grid

Edit result-grid rows inline, preview the generated changes, then commit or revert. Compare two query results with the built-in verifier — row/column differences, aggregates, and timings. Export results as CSV, JSON, Excel, or SQL INSERT statements.

Database

Schema Explorer

Use the Schema sidebar to browse tables, views, and functions — each with a live count, filtered by the search box. Double-click a table or view to open it in a paginated data tab; right-click for structure editing, CSV import, or a schema refresh. Use Ctrl+P for quick search across tables, columns, views, functions, query history, and snippets.

ER diagrams

Generate ER diagrams from your live schema to see table relationships visually instead of navigating them table by table.

Schema Compare

Compare two databases to identify structural differences — useful for checking what changed between environments before a deployment.

Safety

Read-only mode

Mark a connection profile Read-only to block every write before it reaches the database — INSERT, UPDATE, DELETE, REPLACE, LOAD DATA, and DDL, whether typed directly, run as part of a script, generated by a grid commit, or issued by a CSV import. Where the driver supports it, QForge also asks the database itself for a read-only session as a second layer. This is a convenience, not a security boundary — it's not a substitute for a real read-only database user.

Credentials

Saved connection credentials are stored using your operating system's secure credential storage (the macOS Keychain) — not on this website. This licensing service never receives your database credentials.

Production connections

Every connection profile has an Environment field — Local, Development, Staging, or Production — set explicitly by you, never guessed from the hostname. The active environment shows as a persistent colored badge above the query tabs. This is a visual safety aid, not an access-control mechanism: database permissions are what actually protect a database. Combine it with read-only mode when working against production.

Licensing

Free vs. Pro

QForge Free works fully offline with no license required. QForge Pro is a one-time purchase that removes Free's limits and unlocks Schema Compare and full ER diagrams — see the Free vs. Pro comparison.

Activation

Activate a purchased license from Help → License…; it's verified fully offline (an Ed25519 signature, no account or network call required for the signature check itself).

Deactivation

Visit My devices and paste your license key to see every device currently activated and deactivate one to free up a seat — no account or email login needed.

Device limits

Each license is scoped to a device count chosen at purchase — Single device (1 active activation) or Two devices (up to 2 at once). See License & activation help for troubleshooting.

Updates

Feature access is lifetime and never expires. Continuing to receive new app updates after the first year is a separate, optional paid renewal — a lapsed renewal never removes a feature you already have, it just stops new versions.

Download QForge