Skip to content
env-sync-viewer
Menu

Get started

Get started

There is nothing to sign up for. You run env-sync-viewer in your own infrastructure, from a clone of the repository. The repository is private, so ask for access first.

  1. Step 1

    Request access

    The repository and env-sync are private. Send a request through the contact form and you will get a clone URL.

  2. Step 2

    Build

    Run pnpm install && pnpm build at the root of the clone.

  3. Step 3

    Set up Postgres

    Run pnpm db:deploy against a local Postgres, then create the collector and viewer login roles as the repository’s getting-started guide describes.

  4. Step 4

    Collect and view

    Run the collector with the fake env-sync from the test suite, then start the viewer. A real deployment adds a scheduled job with real platform credentials.

Local demo, no credentials

pnpm install && pnpm build
DATABASE_URL=postgresql://postgres:postgres@127.0.0.1:5432/env_sync_viewer pnpm db:deploy
# create the env_sync_collector / env_sync_viewer_app login roles and the demo files
PATH="$PWD/apps/collector/test/fake-bin:$PATH" \
  DATABASE_URL=postgresql://env_sync_collector:<password>@127.0.0.1:5432/env_sync_viewer \
  node apps/collector/dist/main.js /tmp/esv-demo/inventory.json
pnpm --filter @env-sync-viewer/web dev   # http://localhost:3054

Settings the code reads (names only)

  • DATABASE_URL: the collector’s and the viewer’s own Postgres login role
  • STALE_AFTER_HOURS: when a quiet target turns stale (default 26)
  • VIEWER_ALLOWLIST: confirmed email addresses that may see the viewer
  • NEXT_PUBLIC_SUPABASE_URL and NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY: the viewer’s sign-in

What you need

  • Node.js 24 or later and pnpm 10
  • PostgreSQL
  • A Supabase project for the viewer’s sign-in
  • For real collection: env-sync (private), the `aws`, `gh` and `op` binaries on the collector host, and a dedicated CI environment