Quick start
1. Clone both implementation repositories
Section titled “1. Clone both implementation repositories”Place them under the same parent directory:
git clone https://github.com/QingZoneX/qtable-server.gitgit clone https://github.com/QingZoneX/qtable-web.gitThe layout should look like:
qingzone/├── qtable-server/└── qtable-web/2. Configure server Compose
Section titled “2. Configure server Compose”cd qtable-servercp .env.example .envThe 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-webFor 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.
3. Start the full stack
Section titled “3. Start the full stack”docker compose up --build -dOpen http://localhost:9100. The web app is the user-facing endpoint; the API, PostgreSQL, Redis and MinIO are loopback-bound by default.
4. Verify
Section titled “4. Verify”docker compose pscurl -fsS http://localhost:9100/healthzCore 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.