Files
zeekay 46f4a34819 Frame Story — visual photo essays on the Hanzo stack
Long-scroll photo essay builder: index (poster tiles), reader (cinematic
full-bleed scroll), builder (order image/text beats, publish). @hanzo/gui
+ @hanzo/iam PKCE + @hanzo/base (stories, blocks; org-scoped). Forked from
hanzo-starter; provider stack, vite.config, auth and deploy contract intact.
2026-07-21 10:43:02 -07:00

21 lines
913 B
TypeScript

/**
* The app's environment contract, in ONE place. Every value has a sensible
* default so the app runs against live Hanzo (hanzo.id + api.hanzo.ai) with
* zero config; the deploy pipeline overrides them per environment.
*/
const origin = typeof window !== 'undefined' ? window.location.origin : ''
/** OIDC issuer (Hanzo IAM). */
export const IAM_URL = import.meta.env.VITE_HANZO_IAM_URL || 'https://hanzo.id'
/** IAM application (client) id, `<org>-<app>`. Per-app clients are provisioned at deploy. */
export const CLIENT_ID = import.meta.env.VITE_IAM_CLIENT_ID || 'hanzo-app'
/** PKCE redirect URI — this origin's callback route unless overridden. */
export const REDIRECT_URI =
import.meta.env.VITE_HANZO_REDIRECT_URI || `${origin}/auth/callback`
/** Browser-reachable Hanzo Base data plane (IAM-native). */
export const BASE_URL = import.meta.env.VITE_HANZO_BASE_URL || 'https://api.hanzo.ai'