Skip to content
Sift

Local version

Run Sift on your own machine

The local version is the same app running on your computer instead of a shared host. It is multiplatform - Windows, macOS, and Linux - needs only a supported Node.js runtime, and is how you connect a real detection API so you can read validated (still probabilistic) results.

Requirements

Quick start, one command at a time

  1. 01git clone <your-repo-url> sift

    Get the source locally.

  2. 02cd sift && npm install

    Install dependencies (needs internet the first time).

  3. 03npm run build

    Compile the production server.

  4. 04PORT=8787 node .output/server/index.mjs

    Start it. Open the printed URL.

The built output is a self-contained Node server, so the same three steps work unchanged on Windows (PowerShell), macOS, and Linux. The production URL you open is served entirely from your own machine.

Connecting a real detector (optional)

To move from the clearly-labeled experimental signature to real classification, configure a detection API and run locally:

1. Create a .env file

Copy .env.example to .env and fill it in. The example documents every variable.

2. Point it at your provider

Set DETECTOR_API_URL (and DETECTOR_API_KEY / DETECTOR_MODEL as needed). The proxy posts JSON with your text, sends a bearer token, applies a timeout, and returns the provider's response.

3. Restart and check

Rebuild and restart. The app now reads a detector as connected, and the check page gains a run button that calls only the provider you chose.

Your API key lives only in the server environment: it is read on the server, never shipped to the browser, and never committed to the repo (the .env file is git-ignored). The .env.example template is the only config file you should ever commit.

Limitations of the local version

What stays private

On your own machine nothing leaves it except an explicit call to a provider you configured yourself. On any host you deploy, the interface still discloses external processing before it submits anything. Sift does not log or store the text you check.