
Setup
- 27 installs
- 326 repo stars
- Updated August 4, 2026
- clickhouse/clickhouse-js
Set up the clickhouse-js repository in a fresh checkout so tests, lints, type checks, builds, and examples can run.
About
Prepares the clickhouse-js repo in a fresh checkout, covering Node version, workspace and example-package installs, package builds, and starting ClickHouse via Docker Compose. A developer uses it before running the repo's test, lint, typecheck, or build scripts.
- Installs across npm workspaces and independent example packages
- Starts ClickHouse via Docker Compose for integration tests
Setup by the numbers
- 27 all-time installs (skills.sh)
- Ranked #531 of 911 Databases skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/clickhouse/clickhouse-js --skill setupAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 27 |
|---|---|
| repo stars | ★ 326 |
| Last updated | August 4, 2026 |
| Repository | clickhouse/clickhouse-js ↗ |
What it does
Set up the clickhouse-js repository in a fresh checkout so tests, lints, type checks, builds, and examples can run.
Files
clickhouse-js Repository Setup
Use this skill before running any of the npm run test:*, npm run lint, npm run typecheck, or npm run build scripts in a fresh checkout (or after pulling changes that touch package.json files).
Prerequisites
- Node.js 22 recommended (matches
.nvmrc). The rootpackage.jsondeclares"engines": { "node": ">=20.19.0" }, and CI tests Node 20, 22, and 24. - Docker with the Compose plugin (
docker compose ...). Required only for integration tests and any example that talks to a real server.
1. Install dependencies
This is an npm workspaces repo (packages/*), with two additional independent example packages (examples/node, examples/web) that have their own package.json and are not part of the workspaces.
Install all three:
npm install
npm --prefix examples/node install
npm --prefix examples/web installThe root postinstall script patches node_modules/parquet-wasm/package.json; it runs automatically as part of npm install.
2. Build the workspace packages
The workspace packages (@clickhouse/client-common, @clickhouse/client, @clickhouse/client-web) must be built before some tests, examples, and typechecks can resolve their inter-package imports:
npm run buildThis runs build in every workspace package.
3. Start ClickHouse (only for integration tests / examples)
Unit tests do not need a server. Integration tests (npm run test:*:integration*) and the example runners do.
From the repo root:
docker compose up -dThis starts both the single-node setup (clickhouse on 8123/9000, clickhouse_tls on 8443/9440) and the two-node cluster (clickhouse1, clickhouse2, plus the nginx round-robin entrypoint on 8127). All services use non-overlapping ports so a single up -d covers every integration test mode.
To override the server version, set CLICKHOUSE_VERSION when starting Compose; for example: CLICKHOUSE_VERSION=head docker compose up -d, CLICKHOUSE_VERSION=latest docker compose up -d, or CLICKHOUSE_VERSION=24.8 docker compose up -d to use an explicit version tag.
4. Verify
After the steps above you can run, for example:
npm run lint— lint every workspace packagenpm run typecheck— typecheck every workspace packagenpm run test:node:unit/npm run test:web:unit— unit tests, no server requirednpm run test:node:integration/npm run test:web:integration— integration tests, server required- From
examples/nodeorexamples/web:npm run lint,npm run typecheck,npm run run-examples
See npm run from the repo root for the full list of test scripts.