QueryDeck Docs
Getting Started

qdeck quickstart

Run one command in your project, get a pre-connected database client.

For: developers. Estimated time: 1 minute.

qdeck is the QueryDeck command-line tool. Run it in any project that uses Prisma, Drizzle, TypeORM, Knex, Sequelize, Django, or Rails. It finds your database config, reads the credentials, and opens QueryDeck connected to your project.

Install the CLI

The CLI ships with the app. To install the qdeck command into your PATH, open the QueryDeck app and run:

qdeck --install-cli

QueryDeck creates a symlink at /usr/local/bin/qdeck pointing to the binary inside the app bundle. The symlink survives app updates.

You can also install from SettingsTools in the app, which has the same effect with a button.

To remove the symlink later:

qdeck --uninstall-cli

Use it

In any project directory:

qdeck

That's it. qdeck with no arguments scans the current directory, detects the ORM, reads the database URL, and opens QueryDeck connected to the right database.

You'll see something like this in the terminal:

Detected:  Prisma
Database:  postgresql://user:***@db.example.com:5432/myapp
Config:    prisma/schema.prisma
Env:       .env
Open QueryDeck with this connection? [Y/n]

Press Enter. QueryDeck opens, the connection is already there, and you're in the query editor.

Common commands

# Scan a different folder
qdeck ./apps/api

# Connect to a database URL directly, no scanning
qdeck postgres://user:pass@host:5432/db

# Open a SQLite file directly
qdeck ./data.sqlite

# See what would be detected, without connecting
qdeck --dry-run

# Skip the confirmation prompt
qdeck --yes

# See the full detection trace
qdeck --verbose

# Force a new window even if QueryDeck is already running
qdeck --new-window

Supported ORMs

ORMConfig file we read
Prismaschema.prisma or prisma.config.ts
Drizzledrizzle.config.ts / drizzle.config.js
TypeORMdata-source.ts / ormconfig.json
Knexknexfile.js / knexfile.ts / knexfile.mjs
Sequelizeconfig/config.json or .sequelizerc
Djangosettings.py (the DATABASES dict)
Railsconfig/database.yml

When qdeck finds an ORM, it parses the config, resolves environment variables from .env, .env.local, .env.development, and similar files, and hands the result to QueryDeck.

If no ORM matches, qdeck falls back to scanning .env files for any variable that looks like a database URL (DATABASE_URL, DB_URL, POSTGRES_URL, etc.) and uses the first one it finds.

Monorepos

qdeck walks up from the current directory until it finds a project root (a .git, package.json, Cargo.toml, or similar marker). In a monorepo, run it inside the sub-package that actually has the DB config:

cd packages/api
qdeck

If the same monorepo has multiple databases (one per service), qdeck lists them all in --verbose mode. You pick one in the confirmation prompt.

What's next