Skip to content

Quick start

Place them under the same parent directory:

终端窗口
git clone https://github.com/QingZoneX/qtable-server.git
git clone https://github.com/QingZoneX/qtable-web.git

The layout should look like:

qingzone/
├── qtable-server/
└── qtable-web/
终端窗口
cd qtable-server
cp .env.example .env

The current server Compose still carries a compatibility default for the previous frontend directory layout, so with the current public repository name you must set this in .env:

QTABLE_UI_CONTEXT=../qtable-web

For local development you may keep the example development credentials. For any shared or internet-facing environment, replace SECRET_KEY and attachment-storage credentials and configure a stable ENCRYPTION_KEY.

终端窗口
docker compose up --build -d

Open http://localhost:9100. The web app is the user-facing endpoint; the API, PostgreSQL, Redis and MinIO are loopback-bound by default.

终端窗口
docker compose ps
curl -fsS http://localhost:9100/healthz

Core table capability does not require an external AI provider. If you enable AI, configure provider credentials through QTable’s encrypted AI configuration flow rather than frontend environment variables or repository files.

See Self-hosting and the Production checklist for deployment guidance.