Build this site
How to build implemented.stream from source, test it and get it live. To deploy your own SDK app instead, see Deploy your app.
On this pageInstall and run the site locally · Build and test 2–3 rounds · Deploy with the owner's approval
Requirements
- Node.js 22.20.0, pinned in
.nvmrcand.node-version. - npm. The repo uses workspaces:
docsandpackages/*. - For deploys only: access to the Cloudflare account that owns
implemented.stream.
1. Install dependencies
This step installs the packages from the lockfile.
npm ciExample output: npm reports the packages added, for example added 1200 packages in 40s.
If you see an error:
ERESOLVEornode-gyperrors mean.npmrcis missing or Node.js is not 22.20. Checknode -vand confirm.npmrcexists.
.npmrc sets legacy-peer-deps and skips native install scripts. A plain npm ci works from a clean clone.
2. Run the site locally
This step starts the dev server so you can preview pages.
npm run devExample output: a Local URL such as http://localhost:3000/.
3. Build the site
This step builds VitePress and checks for dead links.
npm run buildExample output: a build complete line, then [build] Successfully populated root build artifacts.
scripts/build.mjs copies the output to dist/ and build/. Cloudflare uses dist/. Both folders are gitignored.
4. Test the deploy
This step checks the deploy config without logging in.
npx wrangler deploy --config wrangler.jsonc --dry-runExample output: Wrangler reads the files in ./dist, then prints --dry-run: exiting now.
This optional step runs the zip-merge test.
ZIP_MERGE_FIXTURE_ROOT=/tmp/zips npx tsx rollspace/scripts/merge-two-zips.test.mjsExample output: the test script finishes without failures.
5. Deploy with approval
The usual path is Cloudflare Workers Builds. Push to main and Cloudflare builds and deploys. DEPLOY.md lists the settings.
To deploy by hand, log in first.
Requires: Cloudflare login
Run the login on its own. It opens your browser. Never paste tokens into chat or code.
npx wrangler loginExample output: Successfully logged in.
This step uploads the build to Cloudflare.
npx wrangler deploy --config wrangler.jsoncExample output: upload progress, then the implemented.stream routes.
If you see an error:
name does not matchmeans the Worker name differs fromwrangler.jsonc.Authentication errormeans you should runnpx wrangler loginagain.
wrangler.jsonc field | Value |
|---|---|
name | implemented-stream |
assets.directory | ./dist |
| Custom domains | implemented.stream, www.implemented.stream |
Keep the Cloudflare token and account ID in environment secrets. Never commit them.
For Cloudflare Workers Builds settings, see DEPLOY.md in the repo root.
Troubleshooting
| Problem | Fix |
|---|---|
assets.directory missing | Run npm run build first |
| Peer dependency errors | Make sure .npmrc is present, then npm ci |
better-sqlite3 / node-gyp build fails | .npmrc sets ignore-scripts=true; the docs build does not need it |
| Old page still shows | Hard refresh. The cache can lag for a minute after a deploy. |