Skip to content

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lens — Live Demo

▶ Live now: https://industrial-ella-mohammedelattar-8b6e3b6c.koyeb.app

The official live demo for LensJS — a self-contained, publicly deployable Lens instance. It's an Express app that wires every watcher (requests, queries, cache, exceptions, mail, HTTP, events, Redis, FCM, logs, jobs) and continuously seeds realistic activity, so anyone who opens the dashboard sees a live, populated instance.

It depends only on the published @lensjs/* packages, so it deploys anywhere with a plain npm install — no monorepo build required.

  • Dashboard: /lens
  • Health check: /healthz
  • Root / redirects to the dashboard.

Run locally

npm install
npm start
# open http://localhost:8000/lens

Environment

Variable Default Purpose
PORT 8000 Injected by the host.
LENS_DEMO true Background activity seeder. Set false to disable.
REDIS_URL Optional. A free Upstash rediss://… URL lights up the Redis watcher.
LENS_PASSWORD Optional. Password-locks the dashboard.
PUBLIC_URL Optional. If set, the app pings its own /healthz every 10 min to stay warm.

The store is bounded (size cap + ~2 h age-based retention) and the filesystem on free hosts is ephemeral, so the demo self-cleans and never fills the disk.

Deploy free on Koyeb (recommended)

Koyeb has a genuine free instance (512 MB, no credit card) and wakes in ~1–5 s after idle — ideal for a demo. On wake, the boot seeder repopulates immediately.

  1. Push this repo to GitHub (see below).
  2. In Koyeb: Create Web Service → GitHub, pick this repo.
  3. Builder: Dockerfile (a Dockerfile is included; work directory = repo root).
  4. Instance type: Free. Region: Frankfurt or Washington, D.C.
  5. Health check: HTTP path /healthz.
  6. (Optional) add the env vars above, then Deploy.

Your demo will be live at https://<your-app>.koyeb.app (root redirects to the /lens dashboard).

Works the same on Render, Google Cloud Run, Northflank, or any Docker host. On Render's free tier (which sleeps after 15 min with a ~60 s cold start), add a free uptime pinger (cron-job.org / UptimeRobot) hitting /healthz, or set PUBLIC_URL to your Render URL.

Free Redis (Upstash)

  1. Create a free database at upstash.com (Redis).
  2. Copy the rediss://… TCP URL (not the REST URL).
  3. Set it as REDIS_URL on your host. The Redis watcher will now be populated.

Without REDIS_URL, the demo still runs — the Redis section just stays empty.

Link it from the docs

Add a Live Demo entry to the docs nav in the main lensjs/lens repo (packages/docs/.vitepress/config.mts):

nav: [
  // …
  { text: "Live Demo", link: "https://<your-app>.koyeb.app", target: "_blank" },
],

Notes

  • This is a public demo: it only ever handles obviously fake data. Don't add real secrets or PII.
  • The dashboard's "delete all" is destructive, but the seeder repopulates within seconds, so a wipe self-heals. Set LENS_PASSWORD if you'd rather lock it.

About

Live, always-on demo of LensJS — the self-hosted monitoring & debugging dashboard for Node.js: requests, DB queries, cache, exceptions, mail, jobs, and more.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages