q-cli
The official command-line interface for That Is A Q. Scaffold, build, deploy, and manage your Q-powered projects from the terminal with zero config overhead.
~/projects
❯ q init --type nextjs --template enterprise
✔ Scaffolding project... done
✔ Installing dependencies... done
⚡ Ready! Run 'cd q-starter && q dev' to start.
❯ q build --optimize
📦 Compiling assets...
✨ Tree-shaking modules...
✓ Production build successful (1.2s)
❯ q deploy --region us-east-1
🚀 Pushing to edge network...
✓ Live: https://q-app.us-east-1.q.app
Installation
$ npm install -g @thatisaq/q-cli
Recommended for Node.js & TypeScript projects. Requires Node 18+.
$ yarn global add @thatisaq/q-cli
$ pip install that-is-a-q-cli
Python binding for data pipelines & ML workflows.
$ curl -fsSL https://cli.q.app/install | bash
Universal binary installer for Linux/macOS/Windows.
Command Reference
| Command | Description | Example |
|---|---|---|
| q init | Scaffold a new project with templates, linters, and CI config. | q init --type nextjs --auth clerk |
| q dev | Start local dev server with HMR, type checking, and API mocking. | q dev --port 3000 |
| q build | Compile production assets with tree-shaking and edge optimization. | q build --optimize --sourcemap |
| q deploy | Push to Q's global edge network with zero-downtime rollouts. | q deploy --region eu-central-1 |
| q doctor | Audit project health: security, performance, and config validity. | q doctor --fix |
| q config | Manage environment variables, API keys, and workspace settings. | q config set Q_API_KEY="..." |
Configuration
q-cli uses a .qrc file in your project root. All values are optional and inferred from context.
~/.qrc (Default)
[project]
name = "my-app"
framework = "nextjs"
region = "auto"
[build]
target = "es2022"
minify = true
edge = true
Environment Variables
Override config at runtime or in CI/CD pipelines.
Q_PROJECT_NAME = "prod-app"
Q_BUILD_TARGET = "edge"
Q_DEPLOY_REGION = "ap-south-1"
Q_DEBUG = true
Quick Notes
- Run
q --helpfor a full list of subcommands and flags. - Auto-complete is built-in. Press
Tabin your terminal to see suggestions. - Use
q upgradeto fetch the latest patch without reinstalling. - Telemetry is disabled by default. Enable with
q config set telemetry=true.