Protocol / Run the service

Run the service

The local runtime serves the website, reader, API, account database, and private object storage. Python prepares data; it is not a required request-time web service.

Prepare the workspace#

Use Node 24+ and Python 3.12+. From app, install dependencies with npm ci. If the dictionary is not prepared, run npm run data:build. Then build with npm run build and start with npm start.

Configure only what you use#

npm run readiness lists missing setting names without printing credentials. Environment values are loaded from the local private configuration with shell settings taking precedence.

Email needs a verified sending address and delivery credential. Model inference needs its provider credential. Billing needs the matching product price and webhook configuration. Do not substitute dummy values to make a readiness check green.

Verify before exposure#

Run npm run backend:check for SDK and worker contracts and npm run site:check-links after a full site build. Use the browser to check reading, lookup, navigation, and unavailable-service states.

Persist private data#

Keep both account/corpus and object SQLite databases persistent. Back up live SQLite through its backup API, not by copying only the main file while its write-ahead log is active. Restore to new paths and verify before switching traffic.

Download backend operations for ingestion, receipts, replay, and release operations. This guide does not require enabling every optional service to run the deterministic API.