PRODUCTION · EMBEDDABLE PEOPLE DIRECTORY

One config, a living people directory.

People Website generates an embeddable staff-directory widget for YourPolicy agency sites. Each config is section names, filter rules, attribute mappings, and theming — never the people themselves. Every render resolves live against Trelica, so terminations and new hires show up without anyone touching a URL.

Permanent URL + embed snippet Live Trelica resolution GitHub ↗
COMPONENTS
01 · Config Builder
🧩
Internal · Railway
One config per website

Each YourPolicy agency site gets its own config: section names, filter rules, attribute mappings, and theming. The config never stores people — only the shape of how they should be shown — so there's nothing to keep in sync by hand.

Output One permanent URL + embed snippet
Storage Config only, in people-db (Postgres)
Hard gates Active status + hire date — not editable in UI
Stack Node.js · Railway
Internal service · no public UI
02 · Live Resolution
🔁
Internal · Read-only
Every render reads Trelica fresh

Filters resolve against the Trelica people table live on every request, over a read-only role on the analytics proxy. A termination or a new hire propagates the moment it lands in Trelica — nobody edits a directory page to reflect it.

Source analytics.trelica_people, Brightpath project
Access Read-only role, public proxy
Gates status='active' · hire_date ≤ current date
Null case Missing hire_date still shows (data gap ≠ future start)
Internal service · no public UI
03 · Resilient Serving
🫀
Internal · Health
Keeps serving through upstream failure

/healthz is a liveness probe, not a readiness gate — it stays 200 while the process is alive even if an upstream dependency is down, with per-dependency status in the body. The widget keeps serving its last known good render instead of restarting into a loop.

Photos Slack users.list, cached as bytes in people-db
Probe GET /healthz — always 200 while alive
Fallback Serves last known good render on upstream failure
Deploy Railway project Phantom Ledger
Internal · no public UI
Runtime
Node.js
Data Sources
Trelica (via Brightpath) Slack users.list
Storage
Postgres · people-db Private networking
Infrastructure
Railway Phantom Ledger project

People Website is an internal builder powering embeddable staff directories on YourPolicy agency sites — not a public product itself. Deployed on Railway alongside Phantom Ledger.