mirror of
https://github.com/hanzo-apps/essays.git
synced 2026-10-30 19:17:23 +00:00
Vite + React 19 + @hanzo/gui + @hanzo/iam + @hanzo/base, forked from hanzo-starter. Three views (year-grouped index, distraction-free reading column with drop-cap, markdown editor with publish toggle) over an org-scoped essays collection in Hanzo Base. Warm-paper editorial design.
29 lines
1.1 KiB
YAML
29 lines
1.1 KiB
YAML
# Hanzo Cloud build/deploy manifest — hanzo-apps/longform-essays
|
|
#
|
|
# A forked app is a STATIC SPA: Vite builds `dist/`, Hanzo Cloud serves it at
|
|
# `<slug>.hanzo.app` from the project's object-storage prefix (the `*.hanzo.app`
|
|
# published-sites edge). There is no server process — identity + data are done
|
|
# in the browser (Hanzo IAM PKCE -> IAM token -> Hanzo Base).
|
|
build:
|
|
runtime: static
|
|
install: npm ci
|
|
command: npm run build
|
|
output: dist
|
|
# Serve index.html for client routes (the /auth/callback PKCE return leg).
|
|
spa: true
|
|
|
|
# The Base data plane provisioned on publish. Hanzo Cloud reads this DDL and
|
|
# runs `provisionBaseFromDDL` (creates the collections, org-scoped, IAM-native).
|
|
data:
|
|
base: true
|
|
schema: schema.sql
|
|
|
|
# Injected into the build as import.meta.env.* (see .env.example / README).
|
|
# The deploy pipeline overrides VITE_HANZO_BASE_URL with the provisioned URL and
|
|
# provisions a per-app IAM client (VITE_IAM_CLIENT_ID) that allows this origin's
|
|
# /auth/callback. `hanzo-app` is the shared fallback client.
|
|
env:
|
|
VITE_HANZO_IAM_URL: https://hanzo.id
|
|
VITE_IAM_CLIENT_ID: hanzo-app
|
|
VITE_HANZO_BASE_URL: https://api.hanzo.ai
|