3.1 KiB
Demimonde Deploy Runbook
As of 2026-05-18: Demimonde site is built but not yet deployed. The prod domain
demimondaine.parisis not registered. This doc captures the deploy shape so the runbook is ready when DNS goes live.
What this feature ships
A single-page financial-entity surface for Demimonde, LLC — the office that holds bookings, revenue, and invoicing for the talent. Does not solicit consumer business. The canonical URL exists for registration purposes only.
| Route | Purpose |
|---|---|
/ |
Entity card — mailing/correspondence/scope/policy. |
Architecture
Demimonde uses Astro with the @cocotte/* package scope (Verdaccio
at forge.black.lan/api/packages/lilith/npm/):
| Package | Role |
|---|---|
@cocotte/astro-tokens |
CSS variable contract (theme-agnostic) |
@cocotte/astro-chrome |
BaseLayout primitive |
@cocotte/astro-config |
defineBrandSiteConfig() factory |
Layout: BaseLayout direct (no NavBar/SiteFoot — single-page entity has
no nav). The page’s draft banner + entity card + page footer are
defined inline with a scoped <style> block.
Brand palette: warm-dark cream-on-velvet, pink/cyan accents, system
serif. Lives in src/styles/tokens.css overriding the
@cocotte/astro-tokens contract.
Source of truth
| Surface | Path |
|---|---|
| Astro project | codebase/@features/demimonde/site/ |
| Page | codebase/@features/demimonde/site/src/pages/index.astro |
| Brand tokens | codebase/@features/demimonde/site/src/styles/tokens.css |
| Globals | codebase/@features/demimonde/site/src/styles/globals.css |
| Legacy HTML stub | codebase/@features/demimonde/web/index.html (kept until deploy cutover) |
Once a prod domain is live and deploy is wired, delete web/ in a
single cleanup commit.
Local build
``` cd codebase/@features/demimonde/site bun install bun run build # → dist/index.html + sitemap-index.xml bun run preview # localhost:4321 bun run dev # hot-reload dev server ```
Deploy (pending — demimondaine.paris not yet registered)
When the domain is live:
``` cd codebase/@features/demimonde/site bun install bun run build
rsync -avz --delete \ dist/ \ vps-0:/var/www/demimonde/web/ ```
Nginx vhost: deployments/@domains/demimondaine.paris/nginx/prod.conf
(not yet authored — create when DNS lands). Let’s Encrypt via
certbot at deploy time.
Dev-server port
astro dev defaults to 4321. Pass --port to avoid collisions with
the other brand sites if running multiple at once.