From 8da60d7d5aa278a0a9b3c6c7a9fb510eac803040 Mon Sep 17 00:00:00 2001 From: Alex Dunmow Date: Sun, 5 Jul 2026 11:18:21 +0800 Subject: [PATCH] =?UTF-8?q?feat(gotham):=20Wave=20A=20theme-fleet=20rework?= =?UTF-8?q?=20=E2=80=94=20nightlife/private-club=20identity=20(WO-TF-018)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Re-skin gotham to the locked nightlife / private members' club persona: cinematic near-black luxe, brass hairline accents, letterboxed heroes and tall condensed display type. Codeless .bnp; MID motion tier (JS effects, no canvas), prefers-reduced-motion honored, no-JS fallback. - 49 mandatory builtin overrides in templates/overrides/gotham/ (chrome, marketing, primitives, commerce/local, blog family, auth surface, 404). Field reads, provider fields, form wiring and block JS preserved verbatim from the frozen builtins (cms a0f07e2ae); only presentation reskinned. - 8 page templates (default, landing, article, full-width, blog-index, contact, auth + retained centered), dual-mode via theme_mode. - 4 persona blocks: door_strip, events_marquee, membership_tiers, bottle_menu. Removed old theme blocks that duplicated builtins (hero, stats, features, footer) — now overrides. - 5 dual-mode presets (all 19 tokens, light + dark intentional). - Bundled OFL woff2: Antonio (heading), Cormorant Garamond (body), Inter (meta), IBM Plex Mono (mono); all font-family via var(--font-*). - Themed email-safe wrapper, master pages, seed demo (home/about/blog x3/ contact+workflow/login) in private-club voice. - Gotham utility CSS (reel-*, film-grain, spotlight, letterbox-scrim, reveal) via manifest css.input_css_append; semantic color tokens only. - plugin.mod kind="theme", required_icon_packs=["lucide"]; *.bnp gitignored. Co-Authored-By: Claude Opus 4.8 --- PORT-NOTES.md | 74 -- README.md | 70 +- RECOMMENDED_FONTS.md | 29 + RECOMMENDED_ICONS.md | 21 + assets/fonts/.gitkeep | 0 assets/fonts/LICENSES.md | 16 + assets/fonts/antonio-latin-ext.woff2 | Bin 0 -> 16288 bytes assets/fonts/antonio-latin.woff2 | Bin 0 -> 26592 bytes .../fonts/cormorant-garamond-400-italic.woff2 | Bin 0 -> 18640 bytes assets/fonts/cormorant-garamond-400.woff2 | Bin 0 -> 22016 bytes assets/fonts/cormorant-garamond-600.woff2 | Bin 0 -> 22224 bytes assets/fonts/cormorant-garamond-700.woff2 | Bin 0 -> 22004 bytes assets/fonts/ibm-plex-mono-400.woff2 | Bin 0 -> 14708 bytes assets/fonts/ibm-plex-mono-500.woff2 | Bin 0 -> 14888 bytes assets/fonts/inter-400.woff2 | Bin 0 -> 23664 bytes assets/fonts/inter-500.woff2 | Bin 0 -> 24272 bytes assets/fonts/inter-700.woff2 | Bin 0 -> 24356 bytes assets/fonts/placeholder.txt | 1 - assets/style.css | 33 - blocks/blocks.yaml | 56 +- blocks/bottle_menu.ninjatpl | 29 + blocks/bottle_menu.schema.json | 36 + blocks/door_strip.ninjatpl | 11 + blocks/door_strip.schema.json | 48 ++ blocks/events_marquee.ninjatpl | 24 + blocks/events_marquee.schema.json | 36 + blocks/features.ninjatpl | 1 - blocks/features.schema.json | 55 -- blocks/footer.ninjatpl | 1 - blocks/footer.schema.json | 63 -- blocks/hero.ninjatpl | 1 - blocks/hero.schema.json | 39 - blocks/membership_tiers.ninjatpl | 35 + blocks/membership_tiers.schema.json | 40 ++ blocks/stats.ninjatpl | 1 - blocks/stats.schema.json | 40 -- fonts.json | 114 +-- manifest.yaml | 206 +++++- master_pages.json | 19 +- plugin.mod | 5 +- presets.json | 680 ++++++------------ seed/seed.json | 255 +++++++ seed/workflows.json | 19 + templates/email/gotham.ninjatpl | 157 ++-- templates/gotham/article.ninjatpl | 23 + templates/gotham/auth.ninjatpl | 21 + templates/gotham/blog-index.ninjatpl | 26 + templates/gotham/centered.ninjatpl | 15 +- templates/gotham/contact.ninjatpl | 25 + templates/gotham/default.ninjatpl | 19 +- templates/gotham/full-width.ninjatpl | 15 +- templates/gotham/landing.ninjatpl | 15 +- .../gotham/announcement-bar.ninjatpl | 21 + .../overrides/gotham/audio-embed.ninjatpl | 16 + templates/overrides/gotham/auth-form.ninjatpl | 33 + .../overrides/gotham/auth-status.ninjatpl | 31 + .../overrides/gotham/author-bio-hero.ninjatpl | 22 + .../overrides/gotham/author-bio.ninjatpl | 14 + templates/overrides/gotham/blog-hero.ninjatpl | 24 + .../overrides/gotham/breadcrumbs.ninjatpl | 15 + templates/overrides/gotham/button.ninjatpl | 10 + templates/overrides/gotham/card.ninjatpl | 4 + .../overrides/gotham/category-list.ninjatpl | 18 + .../overrides/gotham/contact-card.ninjatpl | 17 + .../overrides/gotham/contact-form.ninjatpl | 43 ++ templates/overrides/gotham/countdown.ninjatpl | 48 ++ templates/overrides/gotham/cta.ninjatpl | 14 + templates/overrides/gotham/divider.ninjatpl | 13 + .../overrides/gotham/event-list.ninjatpl | 40 ++ templates/overrides/gotham/faq.ninjatpl | 17 + .../overrides/gotham/feature-grid.ninjatpl | 17 + .../overrides/gotham/featured-posts.ninjatpl | 24 + templates/overrides/gotham/footer.ninjatpl | 40 ++ templates/overrides/gotham/gallery.ninjatpl | 52 ++ templates/overrides/gotham/heading.ninjatpl | 8 +- templates/overrides/gotham/hero.ninjatpl | 42 ++ .../overrides/gotham/hours-location.ninjatpl | 31 + templates/overrides/gotham/image.ninjatpl | 11 + .../overrides/gotham/logo-strip.ninjatpl | 15 + templates/overrides/gotham/menu-list.ninjatpl | 30 + templates/overrides/gotham/navbar.ninjatpl | 104 +++ .../gotham/newsletter-signup.ninjatpl | 13 + .../gotham/page-suggestions.ninjatpl | 21 + .../gotham/password-reset-form.ninjatpl | 13 + .../overrides/gotham/popular-posts.ninjatpl | 16 + templates/overrides/gotham/post-hero.ninjatpl | 23 + .../overrides/gotham/post-metadata.ninjatpl | 9 + templates/overrides/gotham/pricing.ninjatpl | 25 + templates/overrides/gotham/quote.ninjatpl | 8 + .../overrides/gotham/related-posts.ninjatpl | 17 + .../overrides/gotham/rich-section.ninjatpl | 13 + templates/overrides/gotham/rich-text.ninjatpl | 2 + .../overrides/gotham/sidebar-nav.ninjatpl | 15 + .../overrides/gotham/social-links.ninjatpl | 13 + templates/overrides/gotham/stats.ninjatpl | 48 ++ templates/overrides/gotham/team.ninjatpl | 21 + .../overrides/gotham/testimonial.ninjatpl | 27 + templates/overrides/gotham/text.ninjatpl | 3 +- templates/overrides/gotham/timeline.ninjatpl | 21 + .../overrides/gotham/utility-bar.ninjatpl | 10 + .../overrides/gotham/video-embed.ninjatpl | 23 + 101 files changed, 2449 insertions(+), 1040 deletions(-) delete mode 100644 PORT-NOTES.md create mode 100644 RECOMMENDED_FONTS.md create mode 100644 RECOMMENDED_ICONS.md delete mode 100644 assets/fonts/.gitkeep create mode 100644 assets/fonts/LICENSES.md create mode 100644 assets/fonts/antonio-latin-ext.woff2 create mode 100644 assets/fonts/antonio-latin.woff2 create mode 100644 assets/fonts/cormorant-garamond-400-italic.woff2 create mode 100644 assets/fonts/cormorant-garamond-400.woff2 create mode 100644 assets/fonts/cormorant-garamond-600.woff2 create mode 100644 assets/fonts/cormorant-garamond-700.woff2 create mode 100644 assets/fonts/ibm-plex-mono-400.woff2 create mode 100644 assets/fonts/ibm-plex-mono-500.woff2 create mode 100644 assets/fonts/inter-400.woff2 create mode 100644 assets/fonts/inter-500.woff2 create mode 100644 assets/fonts/inter-700.woff2 delete mode 100644 assets/fonts/placeholder.txt delete mode 100644 assets/style.css create mode 100644 blocks/bottle_menu.ninjatpl create mode 100644 blocks/bottle_menu.schema.json create mode 100644 blocks/door_strip.ninjatpl create mode 100644 blocks/door_strip.schema.json create mode 100644 blocks/events_marquee.ninjatpl create mode 100644 blocks/events_marquee.schema.json delete mode 100644 blocks/features.ninjatpl delete mode 100644 blocks/features.schema.json delete mode 100644 blocks/footer.ninjatpl delete mode 100644 blocks/footer.schema.json delete mode 100644 blocks/hero.ninjatpl delete mode 100644 blocks/hero.schema.json create mode 100644 blocks/membership_tiers.ninjatpl create mode 100644 blocks/membership_tiers.schema.json delete mode 100644 blocks/stats.ninjatpl delete mode 100644 blocks/stats.schema.json create mode 100644 seed/seed.json create mode 100644 seed/workflows.json create mode 100644 templates/gotham/article.ninjatpl create mode 100644 templates/gotham/auth.ninjatpl create mode 100644 templates/gotham/blog-index.ninjatpl create mode 100644 templates/gotham/contact.ninjatpl create mode 100644 templates/overrides/gotham/announcement-bar.ninjatpl create mode 100644 templates/overrides/gotham/audio-embed.ninjatpl create mode 100644 templates/overrides/gotham/auth-form.ninjatpl create mode 100644 templates/overrides/gotham/auth-status.ninjatpl create mode 100644 templates/overrides/gotham/author-bio-hero.ninjatpl create mode 100644 templates/overrides/gotham/author-bio.ninjatpl create mode 100644 templates/overrides/gotham/blog-hero.ninjatpl create mode 100644 templates/overrides/gotham/breadcrumbs.ninjatpl create mode 100644 templates/overrides/gotham/button.ninjatpl create mode 100644 templates/overrides/gotham/card.ninjatpl create mode 100644 templates/overrides/gotham/category-list.ninjatpl create mode 100644 templates/overrides/gotham/contact-card.ninjatpl create mode 100644 templates/overrides/gotham/contact-form.ninjatpl create mode 100644 templates/overrides/gotham/countdown.ninjatpl create mode 100644 templates/overrides/gotham/cta.ninjatpl create mode 100644 templates/overrides/gotham/divider.ninjatpl create mode 100644 templates/overrides/gotham/event-list.ninjatpl create mode 100644 templates/overrides/gotham/faq.ninjatpl create mode 100644 templates/overrides/gotham/feature-grid.ninjatpl create mode 100644 templates/overrides/gotham/featured-posts.ninjatpl create mode 100644 templates/overrides/gotham/footer.ninjatpl create mode 100644 templates/overrides/gotham/gallery.ninjatpl create mode 100644 templates/overrides/gotham/hero.ninjatpl create mode 100644 templates/overrides/gotham/hours-location.ninjatpl create mode 100644 templates/overrides/gotham/image.ninjatpl create mode 100644 templates/overrides/gotham/logo-strip.ninjatpl create mode 100644 templates/overrides/gotham/menu-list.ninjatpl create mode 100644 templates/overrides/gotham/navbar.ninjatpl create mode 100644 templates/overrides/gotham/newsletter-signup.ninjatpl create mode 100644 templates/overrides/gotham/page-suggestions.ninjatpl create mode 100644 templates/overrides/gotham/password-reset-form.ninjatpl create mode 100644 templates/overrides/gotham/popular-posts.ninjatpl create mode 100644 templates/overrides/gotham/post-hero.ninjatpl create mode 100644 templates/overrides/gotham/post-metadata.ninjatpl create mode 100644 templates/overrides/gotham/pricing.ninjatpl create mode 100644 templates/overrides/gotham/quote.ninjatpl create mode 100644 templates/overrides/gotham/related-posts.ninjatpl create mode 100644 templates/overrides/gotham/rich-section.ninjatpl create mode 100644 templates/overrides/gotham/rich-text.ninjatpl create mode 100644 templates/overrides/gotham/sidebar-nav.ninjatpl create mode 100644 templates/overrides/gotham/social-links.ninjatpl create mode 100644 templates/overrides/gotham/stats.ninjatpl create mode 100644 templates/overrides/gotham/team.ninjatpl create mode 100644 templates/overrides/gotham/testimonial.ninjatpl create mode 100644 templates/overrides/gotham/timeline.ninjatpl create mode 100644 templates/overrides/gotham/utility-bar.ninjatpl create mode 100644 templates/overrides/gotham/video-embed.ninjatpl diff --git a/PORT-NOTES.md b/PORT-NOTES.md deleted file mode 100644 index cdb294a..0000000 --- a/PORT-NOTES.md +++ /dev/null @@ -1,74 +0,0 @@ -# Gotham — templ → codeless `.bnp` port notes - -This theme was ported from the bundled Go/templ `gotham` plugin (source kept in -`port-source/` for reference) to a **codeless** `.bnp` (no Go, no `plugin.wasm`), -matching the `art-deco` reference theme's structure. Every block, page template, -override and the email wrapper is now a host-rendered `.ninjatpl`. - -## What maps 1:1 (faithful, no behavior change) - -| Source (templ) | Codeless equivalent | Notes | -|---|---|---| -| `RenderGotham` (default) | `templates/gotham/default.ninjatpl` | `bn.Head`/`bn.BodyEnd`/`bn.AdminBypassBanner` replaced by host-injected `{{ head_html }}` / `{{ body_end_html }}` / `{{ admin_banner_html }}`. `` hardcoded exactly as source (Gotham is always dark). | -| `RenderGothamLanding` | `templates/gotham/landing.ninjatpl` | hero/main/cta/footer slots preserved. | -| `RenderGothamFullWidth` | `templates/gotham/full-width.ninjatpl` | | -| `RenderGothamCentered` | `templates/gotham/centered.ninjatpl` | | -| `FeaturesBlock` + `featuresComponent` | `blocks/features.ninjatpl` | Inline icon SVG switch (chart/users/clock/star/default) ported verbatim as `{% if %}` chains. `columns` grid logic preserved. | -| `FooterBlock` + `footerComponent` | `blocks/footer.ninjatpl` | Column grid + link-URL logic preserved (see PageID note below). | -| `StatsBlock` + `statsComponent` / `statsEmptyComponent` | `blocks/stats.ninjatpl` | Uses the `items` content array (the only path `StatsBlock` ever took). Empty-state placeholder preserved. | -| `GothamHeadingBlock` override | `templates/overrides/gotham/heading.ninjatpl` | Per-level base classes + `text-accent` preserved. | -| `GothamTextBlock` override | `templates/overrides/gotham/text.ninjatpl` | `prose prose-invert prose-amber` preserved. | -| `GothamEmailWrapper` | `templates/email/gotham.ninjatpl` | Var names (`site_name`, `site_url`, `colors.background/card/foreground/muted/mutedForeground/border/primary`, `preview_text`, `logo_url`, `unsubscribe_url`) match the host email-context contract — identical to the `art-deco` reference wrapper. | -| `assets/style.css` | `assets/style.css` | Byte-identical (`gotham-accent`, `gotham-accent-bg`, `gotham-card`, `gotham-glow`, …). Host serves it as a static and links it via `head_html`. | -| `DefaultMasterPages()` | `master_pages.json` | `gotham:default-master` with navbar / slot / `gotham:footer`. | -| `presets.json`, `fonts.json` | unchanged | Carried over as manifest JSON refs. | - -## Behavior gaps / decisions the parent should review - -1. **`hero` block was NOT registered in the source.** `port-source/hero.go` / - `hero.templ` / `schemas/hero.schema.json` exist, but `register.go` never calls - `br.Register(HeroBlockMeta, ...)`, and `HeroBlock` has the CMS-internal - builtin signature `(ctx, content, _ []string)` — it was **dead code**. Because - the task explicitly asked for a hero port and the `landing` template exposes a - `hero` slot, I ported it faithfully to `blocks/hero.ninjatpl` + - `hero.schema.json` and registered it as `gotham:hero`. **If the parent wants to - match the original registered surface exactly, delete those two files and the - `gotham:hero` entry in `blocks/blocks.yaml`** — nothing else references it. - -2. **`stat_item` block dropped (intentionally).** `port-source/stat_item.go` - (`StatItemBlockMeta`, `Hidden: true`) and `statItemComponent` were also never - registered in `register.go`, and `StatsBlock` renders its items inline (never - via a `stat_item` child block). The child-block container path - (`statsContainerComponent` / `gridCols(childCount)`) was likewise unused. No - codeless equivalent was created; the inline stats rendering is fully preserved. - -3. **Footer internal-page links are a placeholder, same as source.** The templ - `getLinkURL` emitted `/pages/` for a link with `page_id` set, with a - source comment "In production, this would be resolved to the actual page - slug." The codeless template reproduces `/pages/{{ link.page_id }}` verbatim — - it does **not** resolve `page_id` → real slug (the codeless block declares no - data providers, and the source didn't resolve it either). Behavior is - identical to the original; flagging only because it was already a known - limitation. - -4. **No computing logic required code.** All templ helper functions - (`gridCols`, `featureGridCols`, `footerGridCols`, `gothamHeadingBaseClass`, - `parseHeadingLevel`, the email `gotham*Color` fallbacks) are pure - presentational branching and were fully expressed with `{% if %}` / - `|default:` in ninjatpl. Nothing in the source needed a wasm guest, so the - artifact is genuinely codeless. - -## Not ported (obsolete) - -`port-source/` also contains `embed.go`, `registration.go`, `register.go`, -`text_override.go`, `heading_override.go` — Go glue for the bundled/`.so` era. -None have a codeless equivalent (their concerns are now declarations in -`manifest.yaml` / `blocks.yaml` / `master_pages.json`). Delete `port-source/` -once the port is verified. - -## Scope / version - -- `version` starts at **1.0.0** (graduation from bundled). -- `scope` set to **@ninja** per the port task. NOTE: the sibling reference themes - (`art-deco`, `brutalist`) use `@themes`, and the dev registry has both scopes. - Change `plugin.mod` if `@themes` is preferred. diff --git a/README.md b/README.md index 8691645..3e6ae31 100644 --- a/README.md +++ b/README.md @@ -1,36 +1,56 @@ # Gotham -Dark, modern BlockNinja theme plugin. Bold typography, high-contrast accents, -and a small set of theme-specific blocks (stats, features, footer) plus -overrides for the built-in `heading` and `text` blocks when the Gotham -template is active. +The after-dark identity of a nightlife venue or private members' club. Cinematic +near-black luxe, brass hairline accents, letterboxed heroes and tall condensed +display type. A codeless BlockNinja `.bnp` theme (no Go, no `plugin.wasm`) — every +block, page template, override and the email wrapper is a host-rendered +`.ninjatpl`. -## Page templates +## Identity -- `default` — header / main / footer -- `landing` — hero / main / cta / footer -- `full-width` — edge-to-edge header / main / footer -- `centered` — narrow centered content for articles and docs +- **Palettes** — five dual-mode presets. Light is silver-screen platinum; dark + is velvet black. Both are intentionally tuned (`presets.json`). +- **Type** — Antonio (condensed display headings), Cormorant Garamond (elegant + body), Inter (meta), IBM Plex Mono (mono). Bundled OFL woff2 in + `assets/fonts/`; always consumed via `var(--font-heading|body|mono, ...)`. +- **Motion** — MID tier. JS scroll reveals and a spotlight-follow on the hero. + No canvas. `prefers-reduced-motion` honoured; renders fully with no JS. +- **Utilities** — `reel-*`, `film-grain`, `spotlight`, `letterbox-scrim`, + `reveal` in `manifest.yaml` `css.input_css_append`. Colour is always + `hsl(var(--token))`. -## Blocks +## Page templates (`templates/gotham/`) -- `gotham:stats` — stat row with configurable items -- `gotham:features` — feature grid -- `gotham:footer` — branded footer with optional signup form +`default`, `landing`, `article`, `full-width`, `blog-index`, `contact`, `auth`, +plus `centered` (retained extra key). + +## Overrides (`templates/overrides/gotham/`) + +All 49 mandatory builtin keys are re-skinned as template overrides (chrome, +marketing, primitives, commerce/local, blog family, auth surface, the themed +404). Fields, provider reads, form wiring and block JS are preserved verbatim +from the frozen builtins; only presentation changes. + +## Theme blocks (`blocks/`) + +True persona furniture only: + +- `gotham:door_strip` — sticky door strip (reservations line, guest-list CTA, hours) +- `gotham:events_marquee` — line-up of nights and residencies +- `gotham:membership_tiers` — membership cards +- `gotham:bottle_menu` — cellar / bottle-service list + +## Seed (`seed/`) + +`seed.json` (`demo: true`) installs a private-club demo: home, about, a journal +with three posts, a door/contact page (form + `contact_submissions` data table), +and a members' login. `workflows.json` emails admins on a form submission. ## Build ``` -make # builds gotham.so locally -make rebuild # rebuilds plugin inside an instance container +make # pack gotham-.bnp (codeless, no wasm) +make verify # loader-identical checks +make archive-check +make publish # ninja plugin publish --bnp ``` - -## Versioning - -``` -make bump-patch # 0.1.0 -> 0.1.1 -make bump-minor # 0.1.0 -> 0.2.0 -make bump-major # 0.1.0 -> 1.0.0 -``` - -Then `git push --tags` and `ninja plugin publish` to release. diff --git a/RECOMMENDED_FONTS.md b/RECOMMENDED_FONTS.md new file mode 100644 index 0000000..86243d2 --- /dev/null +++ b/RECOMMENDED_FONTS.md @@ -0,0 +1,29 @@ +# Recommended fonts — Gotham + +Gotham is admin-font-controlled. Every family is consumed through +`var(--font-heading|body|mono, )`, so nothing breaks if you assign a +different family. These are the intended stacks. + +Four OFL families ship bundled in `assets/fonts/` (see `LICENSES.md`) and appear +in the admin font picker as `source=template` rows. Assign them in +Admin -> Appearance -> Typography. + +| Role | Variable | Assign | Bundled | Fallback | +|------|----------|--------|---------|----------| +| Headings | `--font-heading` | **Antonio** (or Oswald / Bebas Neue) | yes | `'Antonio', 'Oswald', 'Bebas Neue', sans-serif` | +| Body | `--font-body` | **Cormorant Garamond** | yes | `'Cormorant Garamond', 'Cormorant', Georgia, serif` | +| Meta / labels | `--font-body` accents | **Inter** | yes | `Inter, system-ui, sans-serif` | +| Mono | `--font-mono` | **IBM Plex Mono** | yes | `'IBM Plex Mono', ui-monospace, monospace` | + +## Why these + +- **Antonio** is a tall condensed sans. It carries the letterboxed marquee + headlines. Oswald and Bebas Neue are the intended substitutes if you prefer to + assign from the Google Fonts tab. +- **Cormorant Garamond** is the elegant serif body voice — the invitation card, + not the neon sign. +- **Inter** handles small meta: labels, eyebrows, form fields. +- **IBM Plex Mono** covers any monospace surface (times, codes, run sheets). + +Keep the condensed display and the serif body paired. That contrast is the +theme's typographic signature. diff --git a/RECOMMENDED_ICONS.md b/RECOMMENDED_ICONS.md new file mode 100644 index 0000000..cb70d08 --- /dev/null +++ b/RECOMMENDED_ICONS.md @@ -0,0 +1,21 @@ +# Recommended icons — Gotham + +Gotham renders icons from the sprite system only, as +`` (or the `::pack:name:size::` +template shorthand). It never inlines SVG paths. + +## Required pack + +- **Lucide** (`lucide`) — the theme's default pack. Declared in + `plugin.mod` `required_icon_packs = ["lucide"]`. + +Lucide ships bundled with the CMS, so no manual install is normally needed. If a +theme icon renders empty, open `/admin/icons`, confirm **Lucide** is installed +and enabled, then reactivate the theme. + +## Icons the theme references + +`lucide:diamond`, `lucide:arrow-right`, `lucide:check`, `lucide:chevron-right` +appear in seed content and block defaults. All resolve from the bundled Lucide +pack. Any icon-picker field defaults to a Lucide glyph so the theme renders +without further setup. diff --git a/assets/fonts/.gitkeep b/assets/fonts/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/assets/fonts/LICENSES.md b/assets/fonts/LICENSES.md new file mode 100644 index 0000000..7a6733a --- /dev/null +++ b/assets/fonts/LICENSES.md @@ -0,0 +1,16 @@ +# Bundled font licenses + +All bundled woff2 files in this directory are latin-subset builds redistributed +under the SIL Open Font License 1.1 (OFL). No modifications were made beyond +subsetting to the latin range. + +| Family | Files | License | Source | +|--------|-------|---------|--------| +| Antonio | antonio-latin.woff2, antonio-latin-ext.woff2 | SIL OFL 1.1 | Vernon Adams / Google Fonts | +| Cormorant Garamond | cormorant-garamond-400.woff2, cormorant-garamond-400-italic.woff2, cormorant-garamond-600.woff2, cormorant-garamond-700.woff2 | SIL OFL 1.1 | Christian Thalmann / Google Fonts | +| Inter | inter-400.woff2, inter-500.woff2, inter-700.woff2 | SIL OFL 1.1 | Rasmus Andersson / Google Fonts | +| IBM Plex Mono | ibm-plex-mono-400.woff2, ibm-plex-mono-500.woff2 | SIL OFL 1.1 | IBM / Google Fonts | + +Full OFL text: https://openfontlicense.org/. Font-family is still admin-controlled; +these bundled families appear as `source=template` rows in the fonts picker and +are consumed only via `var(--font-heading|body|mono, )`. diff --git a/assets/fonts/antonio-latin-ext.woff2 b/assets/fonts/antonio-latin-ext.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..282553595781c80dc690e0e88e64dd9cbb82c843 GIT binary patch literal 16288 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

*!K5cU_36)g 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 literal 0 HcmV?d00001 diff --git a/assets/fonts/cormorant-garamond-400-italic.woff2 b/assets/fonts/cormorant-garamond-400-italic.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..613b1b0ff15a2982744cde94977b006235b33bc2 GIT binary patch literal 18640 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 literal 0 HcmV?d00001 diff --git a/assets/fonts/cormorant-garamond-400.woff2 b/assets/fonts/cormorant-garamond-400.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..38cbfcccecd7d9ea42a0665de99a68a777a477a9 GIT binary patch literal 22016 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 z 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 literal 0 HcmV?d00001 diff --git a/assets/fonts/cormorant-garamond-700.woff2 b/assets/fonts/cormorant-garamond-700.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..d17b70b1133460e2ccec04a4ee93ff090725ff83 GIT binary patch literal 22004 zcmV)AK*YayPew8T0RR9109Et=4gdfE0Srh009BX(1DTls00000000000000000000 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 z zkzwda05|7mVUE+eSMDmrUkfE=D_7b@@%ANS>C*)?m zN&{8Le@pmOy*U~&7)ZC7j_>au9|U$oE-T)W5@;Su^#?25iJ7y!SrIOGFuo|(6J<;e zD`GP~wx!S&oIcx94gD#jF+EJ0)H`Nm^7nq7?hS=v#lBXN=vJKRm6MU(b6!t2Wgh8c zJe-sydvb$z@B@p$Wi#Ware%K@~G(qODaM_w`ZsPQXS`j75IE_(rna{b47LuOG? zk~@$xHIg&v{NaC_uoa3sa^*cm^A7}4*BZ}g@8C6|i+nUlQg-4ZvFq6tbpbnt=~I)_ zG7z<%XC=({(n2dH-;(ZVqeL=0QtZ zEp{aZ$nucWFXZNuzZhyN^0eV!%E$tKWJ_BlrtLw&_#jGle8E zU61>tWs!X9`DOZ=carkg%vaP+6L^F#}`% zU)cs^S?d-@U2wV)28v3iM{LV#&W`vUXSqGEJW151SR0*QZ*{9V$z9{L)F-8-*3L>y z4G4{)>`YzDW=;4Jzou=64*ZO7VFC{T8VfuLv+XN35v?LfVfNmJ3R~vp!k9kWUvu29 z$ctGu)`GejKmoex4YJ&rr^kOz&T%ejHX_kyl)^Uuwu#)e13LD?lOIgIXS`YuZlmkR(nb1lI(jbfn+nMG6AXU&OHBm zS@jpkA7zTGjNW`@w6-NWOAm(?TqGqojHtd=t?!b&6Axc82*hHWwX~?hS(*sE>nFvL zyCONJ-D}@xFlUckGu9^J1g^7$flpkHjQq7;AsDu=Z7a*ZO={)-sDxx@85L_rli0(Y zV07eKseadLZSu=xYDrSMIM}hAE{(ttfdu~~$YTs3o4G?Len~1#>#F#YFDjN1+Ou2# zL!0DMgJpPLv^6%%=tx+-q*uMLDsI_kfo|ZVm*)k$RoG|B%~6O>N9uLm0_s@bhT&j= zB|+C1`s$Kc_18ax&fHjCj3;EY0e=wB(gcE9gZYN-uDU{r=@Bl3nlI^s2s}KVMS}$l zX0yc;G4*|P3u&waKY36Nxz@);%x`dSetxn$kg~nRC(m_z*`bS3v^GFP!Q-B?Yf8Baq^pdw~pR zve3Nm+rGz{4Bd{n>TlUFnE=np5=GSN!3(ZUSoeawXy%TeT7et2!VN5X(g7M%o*gNl zI<<5X^5j=IEh!i>x>v`7$3YZ052^gAo)NyJKDa!u`gBiheZ6mkoCnOGf(U@gyp%9 z`>NOT5rGub;{os=jcYHP$E4Q`&!nDQ8>#ru3_Q0mm=AX=;3MjFoP1cB&neCSlad(4 z-F6{{(^1TxH>Z~vXU|tWz$*lw)kf2sJCn~s7Q*J?<#-mJB>=35=aYlk6<*nj+^*N> zX4S;w{Nhludf{3-*@nR=IB$D}|K@R(D44r=bGSX&z(w>87(%naynB0#mc$$D>pgjn zL&ZS`+=x#gMM;y1NOywoyz>_7SzP(&KB8EDJ;nT?LUL3P`L`izIR^v>HnH$H%1Q8I z_ywU{w<cwdu|Mc!b3yj6HJpW za~0<*3*k5_BvxuE1V!X1g+nP9r(;idDsdJbk)oLi!`^YUz1~>>Jd;Fi$1~Y6Soq}C z+Hkd3Y>7XZtBHdHYyOdQ?|s_2{LRYbN{T; z!vI0rgTtg?L>`Dlpt2DUFJE##s^T-*%VtHfc@}de?Y2r@${lMp1 zu&;aDvoJbD8yPr z50+T#%Bo!0rI|iIL<+bdd_?Z6|0#xrciLEMaoYW>3#(|fa{K1RIAaijf*?$^Fr@4| z6@USZ-l+L?MwoJVwTD^_KI!uIwr6TvmQJnCaWWx3PwDUYPm`3fXt^nU*3wgt=A_ag znyv8_`wTimj~<*PDtn`{n&a zo_qn<8*4NpHL@H$V}R5B+CU&bMkiP!5zoE;^^4NO*$A-jSNj`1dhOEA?qgl0=1e;Z z*2!Jm1Et~J#t|B@O z4^IYZsLj}ZB^uGuI9Visw|Cw97ER1c5Q6;tY%XY} zVNq1@EvZ=tex7<`eFnklv&}@)_8Ma13N^9n!xu!-_kK0mvj|{wd7EdadNRx14qv7B z-A`5C%(%u_uiltks4xajZAmxPh6szz8E6?w^=DSNB~=UY1QQx#JbK?Ky^og4X-3t1 zAB!`-*#4n4DLKawTj;cw8|v@A)(XBlOg(d6a~a#-x5fD~jTW76f-Id(>PU#Q1!65) zb1jN5aCHM)PW1NAGp!Nl2?ggWSA3OHl`1|Psftj5bOz@Q)V;*r7=G(C)KEC(pO0(5}`US+ZF6CorK)))J0gywt4|w@OafK#FujKTRKb~ z;0)c;F6zR6p*z}7xbBL&0fUcbQZqvp_5Da5?X9bH)D?ACE_8I)^xL?iCLZDP3h0C! z1$dUQjUS6=vAM2$7_wvc8YP_ho((b{;|_l>N6=v%T*E@G9(o(29THGnyj#QBp|Sx|HL1K-#ea!9~_23;uSAQl|<+7f7@+-}vHN^qD$6Eoe2 za-tG!RCVWyn6`?Hq153qKDBicZ2m8t>M&Wol~GQ4@r7lQ87>J4s5-hqWmBy`ra%Om z>6fVBkv3YHULASSgNl zxkE+O?gW#!WLjOr5I_RfgV_KPNPcX$>b%8P-INjtWC?^c`g2FDxE;3b$+f#n<1`!c zqaE=_H*>LJ3?JvmZz93XN4Rd7EJ+x%Abb9jTmy$fiL;&AYKlHTyAS+{_@}I54=A%| zqf~vrUsyUnHKWrX^!5&?=Upl4p4C*exLA8$uaB8Bf%+?v_!M}?jfUL>?HJa=w#t4B ztM{6=odm|V<)GYsYnX_d6~E1A9weZ0C$N=#1#XSKjY*GyO2mSu{4}FPSo1&@Bb!9b zj8O|C7Ynv4E1||$1om}A;{Ur0ztQpbNPPAx5fN?blEly5DTa4m%ajL-kFrm1Ofple z*JgR*Y|aJ&Dix(M7#2hcuyVjs^@n)|L?A;r1bhJGxSp`!6V_Z`dT)9`=D@PFN^_X= zWV3;Z*P%%mTGW;m?(b}?SyX8Be3U2~dX#)!AnQbjq#s5>8fE(V6f(|FquK_1@+F`q zo7KR}4-ra%ftwy~`b4SQNJddMWJk4f)ilccJ*_;A>rG=1$5eZEE38c}nV7*c9NRs@ z*|Sp#&e{}#r`C_|Q(P2IOjjz7Z_R08;!TrW!PZ@c>0r~C=cHi!KD|bhsM*FAO#TC0 zI~!BIBAYKUKb*Sds)f~}`pZbCiXx@FMnoXB$&?mSR0mSMB5n?e>sqpblSQCa)R{nY ze6a4=iYB&OHE(36SfGUV<3$=1Z#+UaPoNR!&L2u=yGuNI^F`p5Qu)qvN|v)OryiSx zv#RKAjB!Xn+5B!%vtT;Q0TW``#Dxb&s?P0Ef%)?Bii@0@FKOAeW!9fdeW=~A7WEY4^iOwpySl~5^nFz<^ z<8;7X6$qzMUZXj#>ZXM|9E;ZuCq-A9@l1hgewnMQOo(V}^rz0-bx<>MQC*gRQ>WZx z4`BF_B+>s#?ETLxJ#jG*cgV$m1HDaI{?EQB@Ytil^2&M*#Ts3>L$gw*KiqfcMCSrc z@j{os(;qJCUX!} zR#DYjIe5b{hzyGM6c{?uHdiW7pj0!Dji)DiBY_3B>hJ0*p*pBrC!{4tU-BztBw(UDoaG2+i( zEl@oX0cv+&ca}M8tjrn?f?i+RoXWZbLzRoNl^ zu&MW}4_e+M{ZYnvPmw+`zFZVB#KrsY34z|5Ut&`YMvvaLS6-MeYdkY^-oavRr)^K!kBAw^pBjkV`kJI3f3yz1; z*8>?zkcl!FZ88dr5^+^rhIz{Yu!fET$U+)QMM;gbAPGn%e?-|-CvIq*w{_W@a1~#} z*{;7L1s`r*Zhmvdd6C?QOUtb>T9b~{wYFEJ)SFXETvz4=Xs{p$qwDp>s!*}pon4rF z3|#M>Mf+(8wz1gWS~SLzYeesi9YxF70M8rKn+Grdu9QmzRQ~_xhMrvs>p$yW#Ne_Yp3+&z z**Ohs8=Zw#vaG|t^{$1S=>y9XMqHe#B#NL@U*3G^^>+kvL6E~J7VsWUA*n*W5|6KW zDgV-+D&vrAo-E?+Wq=BH1e?AfDQN^k8tqcu22ZVA#4Cx^Q_hSRES;341l~YxxVQi4 zs<61aoarJ)12&y70sT_(s4Y||RjbbdeLUIDiR^>^T3_Ahi`&8?@be`CrCY1=#2=DOe>d{BqSEi>#g?fO?6z3O|NzWy_P{UM9XSfCa! zOK=%VRV%CGGe1M-1N0L(O*A@^>QhsbY8w;X?gqQP&Z>0O>CUDP#a9)zx|=KsiM54Q z89fd#w{Z8Lx(Zq#HydODQp5iBvT9o0M#oZuVj_|oSlCqrMNRM^Dh6W2;}I2eMWQsHFTvs}wSz+m zT$T=c;dooxSBj!BWXDi^5`9xI zEoT`IAs=QwgPp<-Mp4c=;L*`gZqes@I?$1w@w50^iIkR0czF2;Q1wa(UW_#5JpxwfP>ahiyxiO2_ ztauD}l50{S3cw$3H=&$&)62&!E%B32v3kq_H{-E4kAqgmYZK+}ql z`<v*S-aprDDD7Sdtufv$Ad?Ck8+IbG=i zk1(;nr9j)cLgz>wZVZrJ=VO4aLpU(JWF3D#7k65YWkDE#Yt_5I?lu%TAo~!5%p^)$ zFr&y=pw+)*G$#j?eu$%D&^ct!=MWXwqQ##4K(h9?uP1w!jFvN3%%bq;O%le1s~67_ z0PBt7P)hF67|!I2amEfB zE9;&itvub5Kbi|(OW-qYAJY6duLQ7HDanG$v-~_=2|Cd!K4lKZJI6|5fEnS2ih_d8 z3lICqQu|$XL*Cr>aPxw-OV_gNStl;A1FnM+mvAC3A_uI~`*V^UiQ#&)+f|ogAIzyN z*>j+$KZ1<06!H36lQ!ggmHm#OPN(o@I5i%U|Jp+?-pb4SP!GNudACD_!2rggCov9> z(0<=izkOq$?;ft`W=gi;TpXAv`p4vpPs*t5vSws7*&HR7ByUZ|A2HE!?gDj;C0jd7 zuD1tQbltlh6|?h^lj&Atmb%dA@FvELu4UaUF0^S%-!y=s6aKKvY7JGzxYC>5$$eQ> z6^9ND_D5KxWD#$u*R`!6LpdkOuhX4(xiy&@-mBQBXMNrWdJtj)g^Z(6{2*8Ur~qp^ z=U5%KMh<`|3Qh_=#z^aOmh3~BJYEGt5e#kQlH_3pQKHp9fmM_l$wy(25peZhmB}86 zBJ+f2m}{Ala6gs0AJVr7-i$2P^(Sb3u;;z4cOLUl3XexQKgYnMb$@)`9kk@Mky%2y8fgUta(6 zpx>(gbq=X+_*HEU_$}bQaan;-PN0I_kb!ot&#mot zcsn#Ky4AwtVTTFWrxTbAB^-nC3`PQ611@C5(;4wFL-uHL3tgP#d+=m|bnBV|v*Nj7 z0+SwxWy>DTfP^tpv5#Uxb={hSHF+R@P04NyWF7eqao!pb+{QU)`hoO3ep^7X(078S znV9L-d7t*!xptmA)AixHb+Sa?7`YB^k7M5SCP3d8CygQ|0_jCV4dv3XM-jAQPWm~B z%_mx}&mFl*v|#h#bF$_k3VIciqVh)3pdMV)i3S_XB}HB)FmHyNBXh4~^ACzgAq|%| zh=%ki0s-GSnwC2G3ryGpsy(;V*6y05>S*AjK3#-dwKNA%?$EI$2#@EIOeV>N@j!i` zq-9gRUJsZ3-Q_RYkuHa24q%st&3Q1PQTTH?HFW1rNok6pLt8xA5W$4jc(9;N@i|U} z7nqq<@BZAFE@ou!#aJ7_f%%4Q6n*Oc4CXHV&TRVLY`SAI-!=jJ zbRw+;KgBi&1^fo6YPOX>DklviH;jU|EX(bqj}cZ)V{>RVrIen0OLuaHyK}ZTKrO*n zP^p7>5!FIjzc7^kaLU87OrG8WdHTvrFTRk`TMn|-)Kw*`^LXh8231$NlD0rHuVXwxTBYjnHfr*-&!xM5@4C(Emw3&IsTUGpVgi%r9yHLImr zz~d=SQX^a~xZL`%r_C^BlG>e>0iN zU|31cAZJixVKCD)`CGueOsS+thh3Nb@nNntFDWTIW}W%jp6b~iQll+-BZ;=S*pz+z0hQp1 z4>vo=_icD<#D!|^alKJ-zXPm@?QK=i(|#l{|L4` ziIT2fll(poCX!RR86suKp_OuURP}J6rPdw8Ill0v5+05h0pmR}N3WOgH9@Q2GpEm! z6`GyvS`sSuFIea+NhpZifT2t>wN;Z`I_4`}T+vX!?XlwO@O+Q2E5nuC*pT8}oz9NQ zX;D%I?-IIcZ75i0i1X?#-aMc6mv3%;sw!%0uX1PE6AWh0 z?)S60mbNW7yGl)vg}w)fK&lVEUwT;VjrUk)CBOIG`$^TAfdca~jbbqB)W21K9W=Jh zYW&DKxX}!W$E7hU-UmELfxB=R$_C$btxDx?upf zm*vha1sf^$j22&}&3cGQ8-grMpbZ{UiBD^EZ|={Y|3^fuj`hS?V$A6iwFg-9K`hAE zW%6t*owTdSo(ORWRc5 zbh}gi9rHYS^;I<DGX5Eh5syUX~>jx^m zOXm9W3p;$4-au*g%0;>PlS4Gv%rNE|O8O((R6oce3uc2%fUz*nv)0IKil>Aafn@^X z;b~?fH%fVPw=Oq1JMi>AA~s~^TrLqe0>v^GL?txHf+DeyGaC7#=zBRNU=b(;7=g+D z6}=={z!4=nApvE{k?0goyA)9c3V~24IV>k&76<^0z(jW_l%1t-3m6PR%d7ZG#_xPc zz?r2Ofr*dMDMt@{%z^}5wvTaZdBw597o(3*5XR;;F(Cm(33SRC%7W#9z!ZefKpkK00tTDWlsg8*a>Wn%v;c;6*L7*8LqLP(}g}(}L0++2{ zK9Z2|NrAyTr_2~oCy`%A@ zbi*KzzF{&lskvUjossK~(dfrmb6KB%Do4OZh0f-uEcEt{x<-35ruQp!Ek+YdXkik! zX8bHkymsKRNUKliHMPnap_A%2N7vQQ;FnC!_jd_Gs`ccCN)S}AVLAHwJW9PkM=k0; zzWW>Ro#FT3>AUy)-B^C_{kAp!|MI&{Klzi+iZ7|Gj1fvUmL>)c^S<8Aj(Jd`A@xgj zUi+KxELknQ5x)2121oeK3z+^%`wsuZK>qm$1kTX#p}+bWBqg38fmQyHWA{wT&1psB zqKA0dqXnzykdK3{K$;wjG>#`(T;vl@XHUUyJ~?Hs{#x61AJg^djY z*M65mR4jX3+aU7y9^4Paey*m|sxN;xSKpvlU;A70uVkV>^ybw_9D7FrieFw33rMdv z16Kzu>bEe*0IP4TxoZL#Zux&SKltY4#{htCeb}!|H#cz7z6CV&6#&4s5C1*^09?;c zw*^O=Pael$XdpBBe{fe)I$ZLfYYzs0<2vnE^}Ye%tNO>RJmoR(x|dx4nFv5N4rhVdf7d=59^>g1O$!!f2|C)En7*Mb$Gg}R{d z*ay-L^8uP+GBph7!eKiWlG1Ikna?+5dgAm&0LA!JBcalqOaULN3*ew(1}~VmUM0{1 z6mx~~h!*RkFVnfJc9LLrlz{3!0k~l3S{%Dd=`8ah7JjJzZtOSGr4Z-y>%aQXzFf3Q zM1F!UuWyNtBr8bO9kN1lBlhWlU2LON#pgi0F-xh8jwF$U~097xsmkJwH zw3Aeey+U$ky2T1pauy9OBjd?E3VE_JYGMTQea3P<3rK0r!d(E}0N6JGd;@^L0EfZ* zh449j_?)OS*cfLBeE){#a7cT_>t8=lRHraC)omKl@(6cHU6zXNRJ6LzzAT~jEdZRx5T>4=_~9|fioYWD@0Y%=Md9Ut^|ZpL1cUpb@JZ?dKu;}PPKt= z`$kg@!I~HVfCIq$+?Xf_=7#9rpBwSHFgGqf{@fI@JjV@{xoUoM^qFr!r*<8NkZdfh z97v@%pp`&d2J{w|CbOX;%y^lzORE->*RZBLu+$(`8@209?679>ZudEQCGcxX(k7}? zS~AU{rUy}8J2oD}g32OPrF$t%v-pVW(cDDwl32tIk*Z9d3I$S$ydU~F@Vl#?Oasfc Xj)M>(B#*%LW{_`R>i=ii000008Dd@f literal 0 HcmV?d00001 diff --git a/assets/fonts/ibm-plex-mono-400.woff2 b/assets/fonts/ibm-plex-mono-400.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..0804aaff92260b5359330f63e05b9ac25ccabeee GIT binary patch literal 14708 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 literal 0 HcmV?d00001 diff --git a/assets/fonts/inter-500.woff2 b/assets/fonts/inter-500.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..54f0a595dd3c76344a980109e7517ed42416de93 GIT binary patch literal 24272 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 because the codeless loader registers -# definitions verbatim — there is no PluginBlockRegistry prefixing in the -# codeless path (unlike the wasm/templ path). The qualified keys match the -# master_pages.json references. +# Gotham theme block definitions (codeless .bnp, WO-TF-018). +# Only TRUE persona furniture remains as theme blocks. Everything that +# duplicated a builtin (hero, stats, feature grid, footer, gallery, divider, +# quote, testimonial...) is now a template OVERRIDE of the builtin key under +# templates/overrides/gotham/. Keys are fully qualified (gotham:) — the +# codeless loader registers definitions verbatim; the qualified keys match the +# data-block attributes, master_pages.json and seed references. blocks: - - key: gotham:hero - title: Hero Section - description: Large hero section with headline and optional CTA - schema: hero.schema.json - template: hero.ninjatpl - - key: gotham:stats - title: Stats Counter - description: Display statistics with labels and values - schema: stats.schema.json - template: stats.ninjatpl - - key: gotham:features - title: Feature Cards - description: Grid of feature cards with icons and descriptions - schema: features.schema.json - template: features.ninjatpl - - key: gotham:footer - title: Footer - description: Multi-column footer with links and copyright - schema: footer.schema.json - template: footer.ninjatpl + - key: gotham:door_strip + title: Door Strip + description: Sticky near-black door strip with brass rules — reservations line, guest-list CTA and tonight's hours. + category: navigation + schema: door_strip.schema.json + template: door_strip.ninjatpl + - key: gotham:events_marquee + title: Events Marquee + description: Letterboxed line-up of nights and residencies, each with date, room and a booking link. + category: content + schema: events_marquee.schema.json + template: events_marquee.ninjatpl + - key: gotham:membership_tiers + title: Membership Tiers + description: Side-by-side membership cards with a brass-framed feature list and an apply link. + category: content + schema: membership_tiers.schema.json + template: membership_tiers.ninjatpl + - key: gotham:bottle_menu + title: Bottle Menu + description: Cellar and bottle-service list grouped into sections, each pour with a note and price. + category: content + schema: bottle_menu.schema.json + template: bottle_menu.ninjatpl diff --git a/blocks/bottle_menu.ninjatpl b/blocks/bottle_menu.ninjatpl new file mode 100644 index 0000000..2a860f3 --- /dev/null +++ b/blocks/bottle_menu.ninjatpl @@ -0,0 +1,29 @@ +{# bottle_menu — cellar list. sections[] and section.items[] are arrays of maps. #} +

+
+
+ {% if eyebrow %}
{{ eyebrow }}
{% endif %} + {% if title %}

{{ title }}

{% endif %} +
+ {% if sections %} +
+ {% for section in sections %} +
+ {% if section.title %}

{{ section.title }}

{% endif %} +
    + {% for pour in section.items %} +
  • + {{ pour.name }} + + {% if pour.price %}{{ pour.price }}{% endif %} + {% if pour.note %}{% endif %} +
  • + {% endfor %} +
+
+ {% endfor %} +
+ {% endif %} + {% if footnote %}

{{ footnote }}

{% endif %} +
+
diff --git a/blocks/bottle_menu.schema.json b/blocks/bottle_menu.schema.json new file mode 100644 index 0000000..b59755e --- /dev/null +++ b/blocks/bottle_menu.schema.json @@ -0,0 +1,36 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "Bottle Menu", + "description": "Cellar and bottle-service list grouped into sections.", + "type": "object", + "properties": { + "eyebrow": { "type": "string", "title": "Eyebrow", "x-editor": "text", "default": "The cellar" }, + "title": { "type": "string", "title": "Section title", "x-editor": "text", "default": "Bottle service" }, + "footnote": { "type": "string", "title": "Footnote", "x-editor": "text", "default": "" }, + "sections": { + "type": "array", + "title": "Sections", + "x-editor": "array", + "default": [], + "items": { + "type": "object", + "properties": { + "title": { "type": "string", "title": "Section title", "x-editor": "text" }, + "items": { + "type": "array", + "title": "Pours", + "x-editor": "array", + "items": { + "type": "object", + "properties": { + "name": { "type": "string", "title": "Name", "x-editor": "text" }, + "note": { "type": "string", "title": "Note", "x-editor": "text" }, + "price": { "type": "string", "title": "Price", "x-editor": "text" } + } + } + } + } + } + } + } +} diff --git a/blocks/door_strip.ninjatpl b/blocks/door_strip.ninjatpl new file mode 100644 index 0000000..9be28e5 --- /dev/null +++ b/blocks/door_strip.ninjatpl @@ -0,0 +1,11 @@ +{# door_strip — sticky brass-on-black door strip. Iterates hours[] (array of strings). #} +
+
+ + {% if hours %}{% endif %} + {% if reserveUrl %}{{ reserveLabel|default:"Guest list" }}{% endif %} +
+
diff --git a/blocks/door_strip.schema.json b/blocks/door_strip.schema.json new file mode 100644 index 0000000..b040ffa --- /dev/null +++ b/blocks/door_strip.schema.json @@ -0,0 +1,48 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "Door Strip", + "description": "Sticky near-black door strip with brass rules, reservations line, guest-list CTA and tonight's hours.", + "type": "object", + "properties": { + "label": { + "type": "string", + "title": "Strip label", + "description": "Short label at the head of the strip, e.g. 'The Door'.", + "x-editor": "text", + "default": "The Door" + }, + "phone": { + "type": "string", + "title": "Reservations phone", + "description": "International-format number for the reservations desk.", + "x-editor": "text", + "default": "" + }, + "reserveLabel": { + "type": "string", + "title": "Reserve button label", + "x-editor": "text", + "default": "Guest list" + }, + "reserveUrl": { + "type": "string", + "title": "Reserve / guest-list URL", + "description": "Link to the booking or guest-list page.", + "x-editor": "link", + "default": "" + }, + "hours": { + "type": "array", + "title": "Door hours", + "description": "Free-form lines such as 'Thu-Sat - 9pm till late'.", + "x-editor": "array", + "default": [], + "items": { + "type": "object", + "properties": { + "line": { "type": "string", "title": "Line", "x-editor": "text" } + } + } + } + } +} diff --git a/blocks/events_marquee.ninjatpl b/blocks/events_marquee.ninjatpl new file mode 100644 index 0000000..151cfd0 --- /dev/null +++ b/blocks/events_marquee.ninjatpl @@ -0,0 +1,24 @@ +{# events_marquee — letterboxed line-up. Iterates events[] (array of maps). #} +
+
+
+ {% if eyebrow %}
{{ eyebrow }}
{% endif %} + {% if title %}

{{ title }}

{% endif %} +
+ {% if events %} +
    + {% for event in events %} +
  • + {{ event.date }} +
    + {{ event.name }} + {% if event.room %}{{ event.room }}{% endif %} + {% if event.note %}

    {{ event.note }}

    {% endif %} +
    + {% if event.url %}Book::lucide:arrow-right:sm::{% endif %} +
  • + {% endfor %} +
+ {% endif %} +
+
diff --git a/blocks/events_marquee.schema.json b/blocks/events_marquee.schema.json new file mode 100644 index 0000000..fb85499 --- /dev/null +++ b/blocks/events_marquee.schema.json @@ -0,0 +1,36 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "Events Marquee", + "description": "Letterboxed line-up of nights and residencies.", + "type": "object", + "properties": { + "eyebrow": { + "type": "string", + "title": "Eyebrow", + "x-editor": "text", + "default": "The programme" + }, + "title": { + "type": "string", + "title": "Section title", + "x-editor": "text", + "default": "Tonight and after" + }, + "events": { + "type": "array", + "title": "Events", + "x-editor": "array", + "default": [], + "items": { + "type": "object", + "properties": { + "date": { "type": "string", "title": "Date", "x-editor": "text" }, + "name": { "type": "string", "title": "Name", "x-editor": "text" }, + "room": { "type": "string", "title": "Room", "x-editor": "text" }, + "note": { "type": "string", "title": "Note", "x-editor": "text" }, + "url": { "type": "string", "title": "Booking URL", "x-editor": "link" } + } + } + } + } +} diff --git a/blocks/features.ninjatpl b/blocks/features.ninjatpl deleted file mode 100644 index 3ed3b8c..0000000 --- a/blocks/features.ninjatpl +++ /dev/null @@ -1 +0,0 @@ -{% if features %}
{% if section_title %}

{{ section_title }}

{% endif %}
{% for feature in features %}
{% if feature.icon %}
{% if feature.icon == "chart" %}{% elif feature.icon == "users" %}{% elif feature.icon == "clock" %}{% elif feature.icon == "star" %}{% else %}{% endif %}
{% endif %}

{{ feature.title }}

{% if feature.description %}

{{ feature.description }}

{% endif %}
{% endfor %}
{% endif %} \ No newline at end of file diff --git a/blocks/features.schema.json b/blocks/features.schema.json deleted file mode 100644 index 6c9de70..0000000 --- a/blocks/features.schema.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "title": "Features Block", - "description": "Grid of feature cards with icons and descriptions", - "type": "object", - "properties": { - "section_title": { - "type": "string", - "title": "Section Title", - "description": "Optional title above the feature cards", - "x-editor": "text" - }, - "columns": { - "type": "integer", - "title": "Columns", - "description": "Number of columns (1-4)", - "x-editor": "number", - "minimum": 1, - "maximum": 4, - "default": 3 - }, - "features": { - "type": "array", - "title": "Features", - "description": "List of feature cards", - "default": [], - "x-editor": "array", - "items": { - "type": "object", - "properties": { - "icon": { - "type": "string", - "title": "Icon", - "description": "Icon name (chart, users, clock, star)", - "x-editor": "select", - "enum": ["", "chart", "users", "clock", "star"] - }, - "title": { - "type": "string", - "title": "Title", - "description": "Feature title", - "x-editor": "text" - }, - "description": { - "type": "string", - "title": "Description", - "description": "Feature description", - "x-editor": "textarea" - } - }, - "required": ["title"] - } - } - } -} diff --git a/blocks/footer.ninjatpl b/blocks/footer.ninjatpl deleted file mode 100644 index 5e37a72..0000000 --- a/blocks/footer.ninjatpl +++ /dev/null @@ -1 +0,0 @@ -
{% if columns %}
{% for col in columns %}
{% if col.heading %}

{{ col.heading }}

{% endif %}{% if col.links %}{% endif %}
{% endfor %}
{% endif %}{% if copyright %}

{{ copyright }}

{% endif %}
\ No newline at end of file diff --git a/blocks/footer.schema.json b/blocks/footer.schema.json deleted file mode 100644 index a743593..0000000 --- a/blocks/footer.schema.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "title": "Footer Block", - "description": "Multi-column footer with links and copyright", - "type": "object", - "properties": { - "copyright": { - "type": "string", - "title": "Copyright Text", - "description": "Copyright notice displayed at the bottom", - "default": "© 2025 Your Company. All rights reserved.", - "x-editor": "text" - }, - "columns": { - "type": "array", - "title": "Footer Columns", - "description": "Columns with headings and links", - "x-editor": "array", - "items": { - "type": "object", - "properties": { - "heading": { - "type": "string", - "title": "Column Heading", - "description": "Title for this column", - "x-editor": "text" - }, - "links": { - "type": "array", - "title": "Links", - "description": "Links in this column", - "x-editor": "array", - "items": { - "type": "object", - "properties": { - "text": { - "type": "string", - "title": "Link Text", - "description": "Display text for the link", - "x-editor": "text" - }, - "page_id": { - "type": "string", - "title": "Page", - "description": "Select an internal page (overrides URL)", - "x-editor": "page-select" - }, - "url": { - "type": "string", - "title": "External URL", - "description": "External URL (used if no page selected)", - "x-editor": "url" - } - }, - "required": ["text"] - } - } - }, - "required": ["heading"] - } - } - } -} diff --git a/blocks/hero.ninjatpl b/blocks/hero.ninjatpl deleted file mode 100644 index 7ff61c5..0000000 --- a/blocks/hero.ninjatpl +++ /dev/null @@ -1 +0,0 @@ -
{% if background_url %}
{% endif %}

{{ headline }}

{% if subheadline %}

{{ subheadline }}

{% endif %}{% if cta_text and cta_url %}{{ cta_text }}{% endif %}
diff --git a/blocks/hero.schema.json b/blocks/hero.schema.json deleted file mode 100644 index 8a15d18..0000000 --- a/blocks/hero.schema.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "title": "Hero Block", - "description": "Large hero section with headline and optional CTA", - "type": "object", - "properties": { - "headline": { - "type": "string", - "title": "Headline", - "description": "Main headline text", - "x-editor": "text" - }, - "subheadline": { - "type": "string", - "title": "Subheadline", - "description": "Supporting text below the headline", - "x-editor": "textarea" - }, - "background_url": { - "type": "string", - "title": "Background Image URL", - "description": "URL for the background image", - "x-editor": "url" - }, - "cta_text": { - "type": "string", - "title": "CTA Button Text", - "description": "Text for the call-to-action button", - "x-editor": "text" - }, - "cta_url": { - "type": "string", - "title": "CTA Button URL", - "description": "Link for the call-to-action button", - "x-editor": "url" - } - }, - "required": ["headline"] -} diff --git a/blocks/membership_tiers.ninjatpl b/blocks/membership_tiers.ninjatpl new file mode 100644 index 0000000..2fb7190 --- /dev/null +++ b/blocks/membership_tiers.ninjatpl @@ -0,0 +1,35 @@ +{# membership_tiers — brass-framed membership cards. tiers[] and tier.features[] are arrays of maps. #} +
+
+
+ {% if eyebrow %}
{{ eyebrow }}
{% endif %} + {% if title %}

{{ title }}

{% endif %} + {% if intro %}

{{ intro }}

{% endif %} +
+ {% if tiers %} +
+ {% for tier in tiers %} +
+
+

{{ tier.name }}

+ {% if tier.featured %}House pick{% endif %} +
+
+ {{ tier.price }} + {% if tier.cadence %}{{ tier.cadence }}{% endif %} +
+ {% if tier.description %}

{{ tier.description }}

{% endif %} + {% if tier.features %} +
    + {% for feature in tier.features %} +
  • ::lucide:check:sm::{{ feature.label }}
  • + {% endfor %} +
+ {% endif %} + {% if tier.applyUrl %}{{ tier.applyLabel|default:"Apply" }}{% endif %} +
+ {% endfor %} +
+ {% endif %} +
+
diff --git a/blocks/membership_tiers.schema.json b/blocks/membership_tiers.schema.json new file mode 100644 index 0000000..226cdb9 --- /dev/null +++ b/blocks/membership_tiers.schema.json @@ -0,0 +1,40 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "Membership Tiers", + "description": "Side-by-side membership cards with a brass-framed feature list.", + "type": "object", + "properties": { + "eyebrow": { "type": "string", "title": "Eyebrow", "x-editor": "text", "default": "Membership" }, + "title": { "type": "string", "title": "Section title", "x-editor": "text", "default": "Join the house" }, + "intro": { "type": "string", "title": "Intro", "x-editor": "textarea", "default": "" }, + "tiers": { + "type": "array", + "title": "Tiers", + "x-editor": "array", + "default": [], + "items": { + "type": "object", + "properties": { + "name": { "type": "string", "title": "Name", "x-editor": "text" }, + "price": { "type": "string", "title": "Price", "x-editor": "text" }, + "cadence": { "type": "string", "title": "Cadence", "x-editor": "text" }, + "description": { "type": "string", "title": "Description", "x-editor": "textarea" }, + "featured": { "type": "boolean", "title": "Featured", "x-editor": "boolean", "default": false }, + "applyLabel": { "type": "string", "title": "Apply label", "x-editor": "text" }, + "applyUrl": { "type": "string", "title": "Apply URL", "x-editor": "link" }, + "features": { + "type": "array", + "title": "Features", + "x-editor": "array", + "items": { + "type": "object", + "properties": { + "label": { "type": "string", "title": "Label", "x-editor": "text" } + } + } + } + } + } + } + } +} diff --git a/blocks/stats.ninjatpl b/blocks/stats.ninjatpl deleted file mode 100644 index 114bedd..0000000 --- a/blocks/stats.ninjatpl +++ /dev/null @@ -1 +0,0 @@ -{% if items %}
{% for stat in items %}
{% if stat.icon %}
{% if stat.icon == "chart" %}{% elif stat.icon == "users" %}{% elif stat.icon == "clock" %}{% elif stat.icon == "star" %}{% else %}{% endif %}
{% endif %}
{{ stat.value }}
{{ stat.label }}
{% endfor %}
{% else %}

Click + to add stat items

{% endif %} \ No newline at end of file diff --git a/blocks/stats.schema.json b/blocks/stats.schema.json deleted file mode 100644 index 2cd5487..0000000 --- a/blocks/stats.schema.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "title": "Stats Block", - "description": "Display statistics with labels and values", - "type": "object", - "properties": { - "items": { - "type": "array", - "title": "Statistics", - "description": "List of statistic items to display", - "x-editor": "array", - "items": { - "type": "object", - "properties": { - "value": { - "type": "string", - "title": "Value", - "description": "The statistic value (e.g., '100+', '99%')", - "x-editor": "text" - }, - "label": { - "type": "string", - "title": "Label", - "description": "Description of the statistic", - "x-editor": "text" - }, - "icon": { - "type": "string", - "title": "Icon", - "description": "Icon name (chart, users, clock, star)", - "x-editor": "select", - "enum": ["", "chart", "users", "clock", "star"] - } - }, - "required": ["value", "label"] - } - } - }, - "required": [] -} diff --git a/fonts.json b/fonts.json index b34bed6..810ff5e 100644 --- a/fonts.json +++ b/fonts.json @@ -1,88 +1,38 @@ [ { - "name": "Gotham", - "family": "Gotham", + "name": "Antonio", + "family": "Antonio", "variants": [ - { - "weight": "100", - "style": "normal", - "file": "fonts/web/gothamthin-webfont.woff2" - }, - { - "weight": "100", - "style": "italic", - "file": "fonts/web/gothamthinitalic-webfont.woff2" - }, - { - "weight": "200", - "style": "normal", - "file": "fonts/web/gothamxlight-webfont.woff2" - }, - { - "weight": "200", - "style": "italic", - "file": "fonts/web/gothamxlightitalic-webfont.woff2" - }, - { - "weight": "300", - "style": "normal", - "file": "fonts/web/gothamlight-webfont.woff2" - }, - { - "weight": "300", - "style": "italic", - "file": "fonts/web/gothamlightitalic-webfont.woff2" - }, - { - "weight": "400", - "style": "normal", - "file": "fonts/web/gothambook-webfont.woff2" - }, - { - "weight": "400", - "style": "italic", - "file": "fonts/web/gothambookitalic-webfont.woff2" - }, - { - "weight": "500", - "style": "normal", - "file": "fonts/web/gothammedium-webfont.woff2" - }, - { - "weight": "500", - "style": "italic", - "file": "fonts/web/gothammediumitalic-webfont.woff2" - }, - { - "weight": "700", - "style": "normal", - "file": "fonts/web/gothambold-webfont.woff2" - }, - { - "weight": "700", - "style": "italic", - "file": "fonts/web/gothambolditalic-webfont.woff2" - }, - { - "weight": "800", - "style": "normal", - "file": "fonts/web/gothamblack-webfont.woff2" - }, - { - "weight": "800", - "style": "italic", - "file": "fonts/web/gothamblackitalic-webfont.woff2" - }, - { - "weight": "900", - "style": "normal", - "file": "fonts/web/gothamultra-webfont.woff2" - }, - { - "weight": "900", - "style": "italic", - "file": "fonts/web/gothamultraitalic-webfont.woff2" - } + { "weight": "400", "style": "normal", "file": "fonts/antonio-latin.woff2" }, + { "weight": "600", "style": "normal", "file": "fonts/antonio-latin.woff2" }, + { "weight": "700", "style": "normal", "file": "fonts/antonio-latin.woff2" } + ] + }, + { + "name": "Cormorant Garamond", + "family": "Cormorant Garamond", + "variants": [ + { "weight": "400", "style": "normal", "file": "fonts/cormorant-garamond-400.woff2" }, + { "weight": "400", "style": "italic", "file": "fonts/cormorant-garamond-400-italic.woff2" }, + { "weight": "600", "style": "normal", "file": "fonts/cormorant-garamond-600.woff2" }, + { "weight": "700", "style": "normal", "file": "fonts/cormorant-garamond-700.woff2" } + ] + }, + { + "name": "Inter", + "family": "Inter", + "variants": [ + { "weight": "400", "style": "normal", "file": "fonts/inter-400.woff2" }, + { "weight": "500", "style": "normal", "file": "fonts/inter-500.woff2" }, + { "weight": "700", "style": "normal", "file": "fonts/inter-700.woff2" } + ] + }, + { + "name": "IBM Plex Mono", + "family": "IBM Plex Mono", + "variants": [ + { "weight": "400", "style": "normal", "file": "fonts/ibm-plex-mono-400.woff2" }, + { "weight": "500", "style": "normal", "file": "fonts/ibm-plex-mono-500.woff2" } ] } ] diff --git a/manifest.yaml b/manifest.yaml index b459c7f..466d788 100644 --- a/manifest.yaml +++ b/manifest.yaml @@ -1,9 +1,10 @@ -# Gotham theme — codeless .bnp manifest (WO-WZ-021 Phase B). +# Gotham theme — codeless .bnp manifest (WO-TF-018, Wave A). # Synthesized into manifest.pb by `ninja plugin build` (no plugin.wasm). # -# No `css:` section: the wasm/templ Gotham shipped no CSSManifest — its utility -# CSS lives in assets/style.css, which the host serves as a static asset and -# links into automatically (head_html) when assets/style.css exists. +# Nightlife / private-club identity: cinematic near-black luxe, brass hairline +# accents, letterboxed heroes, tall condensed display type. Utility CSS lives in +# `css.input_css_append` below (host Tailwind pipeline) — colour is always +# hsl(var(--token)) and font-family always var(--font-heading|body|mono, ...). theme_presets: presets.json bundled_fonts: fonts.json master_pages: master_pages.json @@ -11,33 +12,214 @@ master_pages: master_pages.json system_templates: - key: gotham title: Gotham - description: "Dark, modern theme with bold typography" + description: "After-dark identity for a nightlife venue or private members' club — cinematic near-black luxe, brass accents and condensed display type." page_templates: - system: gotham key: default title: Default - description: "Standard dark page layout with header, main content, and footer" + description: "Centred near-black page with brass rails, header, main and footer." slots: [header, main, footer] - system: gotham key: landing - title: Landing Page - description: "Full-width hero sections, ideal for marketing pages" + title: Marquee Landing + description: "Letterboxed hero, door strip and a closing CTA for the main room." slots: [hero, main, cta, footer] + - system: gotham + key: article + title: Feature + description: "Narrow editorial column for press, listings and the house journal." + slots: [header, main, aside, footer] - system: gotham key: full-width - title: Full Width - description: "Edge-to-edge content without max-width constraints" + title: Grand Room + description: "Edge-to-edge gallery layout for the room, lookbooks and galleries." slots: [header, main, footer] + - system: gotham + key: blog-index + title: The Journal + description: "Blog index with a brass masthead, featured and post-grid slots." + slots: [header, featured, main, footer] + - system: gotham + key: contact + title: Reservations + description: "Contact layout with an optional aside for hours and the door." + slots: [header, main, aside, footer] + - system: gotham + key: auth + title: Members + description: "Centred members' shell with wordmark and a spotlight crest." + slots: [main, footer] - system: gotham key: centered - title: Centered Content - description: "Narrow, centered content for articles and documentation" + title: Centered + description: "Narrow centred column for documents and single statements." slots: [header, main, footer] template_overrides: + # Chrome (4) + - { template: gotham, block: navbar } + - { template: gotham, block: footer } + - { template: gotham, block: utility-bar } + - { template: gotham, block: announcement-bar } + # Marketing (12) + - { template: gotham, block: hero } + - { template: gotham, block: feature-grid } + - { template: gotham, block: rich-section } + - { template: gotham, block: stats } + - { template: gotham, block: testimonial } + - { template: gotham, block: logo-strip } + - { template: gotham, block: pricing } + - { template: gotham, block: team } + - { template: gotham, block: faq } + - { template: gotham, block: timeline } + - { template: gotham, block: cta } + - { template: gotham, block: countdown } + # Primitives (11) - { template: gotham, block: heading } - { template: gotham, block: text } + - { template: gotham, block: rich-text } + - { template: gotham, block: image } + - { template: gotham, block: quote } + - { template: gotham, block: divider } + - { template: gotham, block: button } + - { template: gotham, block: card } + - { template: gotham, block: gallery } + - { template: gotham, block: video-embed } + - { template: gotham, block: audio-embed } + # Commerce / local (6) + - { template: gotham, block: menu-list } + - { template: gotham, block: event-list } + - { template: gotham, block: contact-form } + - { template: gotham, block: contact-card } + - { template: gotham, block: hours-location } + - { template: gotham, block: social-links } + # Blog family (12) + - { template: gotham, block: blog-hero } + - { template: gotham, block: featured-posts } + - { template: gotham, block: related-posts } + - { template: gotham, block: popular-posts } + - { template: gotham, block: category-list } + - { template: gotham, block: post-hero } + - { template: gotham, block: post-metadata } + - { template: gotham, block: author-bio } + - { template: gotham, block: author-bio-hero } + - { template: gotham, block: newsletter-signup } + - { template: gotham, block: breadcrumbs } + - { template: gotham, block: sidebar-nav } + # Auth surface (3) + - { template: gotham, block: auth-form } + - { template: gotham, block: password-reset-form } + - { template: gotham, block: auth-status } + # System (1) + - { template: gotham, block: page-suggestions } email_wrappers: - gotham + +css: + input_css_append: | + /* Gotham theme — cinematic near-black utility CSS. + * + * Colour is always consumed via hsl(var(--token)); font families always + * come from var(--font-heading|body|mono, ). No literal colours + * except black scrims layered over IMAGES (letterbox effect). + */ + @layer utilities { + /* reel-rule — brass hairline, 1px ascending to 2px. */ + .reel-rule { border: none; border-top: 1px solid hsl(var(--primary)); margin: 0; } + .reel-rule-thick { border: none; border-top: 2px solid hsl(var(--primary)); margin: 0; } + + /* reel-frame — thin film frame with brass corner ticks. */ + .reel-frame { position: relative; border: 1px solid hsl(var(--border)); padding: 1.25rem 1.5rem; } + .reel-frame::before, .reel-frame::after { + content: ""; position: absolute; width: 14px; height: 14px; + border-color: hsl(var(--primary)); border-style: solid; pointer-events: none; + } + .reel-frame::before { top: -1px; left: -1px; border-width: 1px 0 0 1px; } + .reel-frame::after { bottom: -1px; right: -1px; border-width: 0 1px 1px 0; } + + /* reel-foil — inset brass glow used on hover / featured states. */ + .reel-foil { + box-shadow: + inset 0 0 0 1px hsl(var(--primary)), + inset 0 1px 0 hsl(var(--primary) / 0.5), + inset 0 -1px 0 hsl(var(--primary) / 0.3); + } + + /* reel-caps — condensed caps tracking for display headings. */ + .reel-caps { text-transform: uppercase; letter-spacing: 0.12em; } + + /* reel-underline — brass hairline underline on headings. */ + .reel-underline { position: relative; padding-bottom: 0.35em; } + .reel-underline::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: hsl(var(--primary)); } + + /* reel-btn — the invitation. Brass on near-black, inverts on hover. */ + .reel-btn { + display: inline-flex; align-items: center; gap: 0.5rem; + border: 1px solid hsl(var(--primary)); + background-color: hsl(var(--primary)); color: hsl(var(--primary-foreground)); + padding: 0.7rem 1.7rem; border-radius: 2px; + text-transform: uppercase; letter-spacing: 0.14em; font-size: 0.8rem; line-height: 1; + transition: background-color 200ms ease, color 200ms ease, box-shadow 200ms ease; + } + .reel-btn:hover, .reel-btn:focus-visible { + background-color: transparent; color: hsl(var(--primary)); + box-shadow: inset 0 0 0 1px hsl(var(--primary)); + } + .reel-btn:focus-visible { outline: 2px solid hsl(var(--ring)); outline-offset: 3px; } + + /* reel-link — brass underline link. */ + .reel-link { color: hsl(var(--primary)); text-decoration: none; border-bottom: 1px solid hsl(var(--primary) / 0.5); transition: color 200ms ease, border-color 200ms ease; } + .reel-link:hover, .reel-link:focus-visible { color: hsl(var(--accent)); border-bottom-color: hsl(var(--accent)); } + + /* film-grain — 4% film-grain noise, dark surfaces. */ + .film-grain { position: relative; isolation: isolate; } + .film-grain::after { + content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; opacity: 0.04; + background-image: + repeating-radial-gradient(circle at 17% 23%, hsl(var(--foreground)) 0 1px, transparent 1px 3px), + repeating-radial-gradient(circle at 73% 61%, hsl(var(--foreground)) 0 1px, transparent 1px 3px); + mix-blend-mode: overlay; + } + + /* spotlight — a radial pool of brass light, hero/crest overlay. */ + .spotlight { background-image: radial-gradient(ellipse 60% 55% at 50% 40%, hsl(var(--primary) / 0.16), transparent 70%); } + + /* reel-strip — brass double-rule band (crest / marquee accent). */ + .reel-strip { + background-image: + linear-gradient(hsl(var(--primary)), hsl(var(--primary))), + linear-gradient(hsl(var(--primary)), hsl(var(--primary))); + background-size: 100% 1px, 100% 1px; + background-position: top, bottom; + background-repeat: no-repeat; + } + + /* reel-mat — brass inner-mat around framed media. */ + .reel-mat { position: relative; padding: 4px; box-shadow: inset 0 0 0 1px hsl(var(--border)); } + .reel-mat > * { display: block; width: 100%; height: 100%; } + + /* reel-dropcap — condensed brass dropcap on first paragraph. */ + .reel-dropcap[data-deco-dropcap]::first-letter, + .reel-dropcap[data-reel-dropcap]::first-letter { + font-family: var(--font-heading, "Antonio", "Oswald", "Bebas Neue", sans-serif); + font-size: 3.2em; line-height: 0.9; float: left; padding: 0.02em 0.14em 0 0; color: hsl(var(--primary)); + } + + /* letterbox-scrim — black cinematic bars over hero imagery (image overlay). */ + .letterbox-scrim { + background-image: linear-gradient(to bottom, + hsl(0 0% 0% / 0.78) 0%, hsl(0 0% 0% / 0.15) 16%, + transparent 40%, transparent 60%, + hsl(0 0% 0% / 0.15) 84%, hsl(0 0% 0% / 0.78) 100%); + } + + /* reveal — MID-tier scroll reveal. No JS = visible; reduced-motion honoured. */ + .reveal { opacity: 1; } + .gotham-js .reveal { opacity: 0; transform: translateY(18px); transition: opacity .7s ease, transform .7s ease; } + .gotham-js .reveal.is-visible { opacity: 1; transform: none; } + @media (prefers-reduced-motion: reduce) { + .gotham-js .reveal { opacity: 1 !important; transform: none !important; transition: none !important; } + } + } diff --git a/master_pages.json b/master_pages.json index ec98fb8..c56c98e 100644 --- a/master_pages.json +++ b/master_pages.json @@ -2,11 +2,22 @@ { "key": "gotham:default-master", "title": "Gotham Default Master", - "page_templates": ["default", "centered"], + "page_templates": ["default", "article", "blog-index", "contact", "centered", "full-width"], "blocks": [ - { "block_key": "navbar", "title": "Main Navigation", "content": { "menuName": "main" }, "slot": "header", "sort_order": 0 }, - { "block_key": "slot", "title": "Main Content Slot", "content": { "slotName": "main", "placeholder": "Page content will appear here" }, "slot": "main", "sort_order": 0 }, - { "block_key": "gotham:footer", "title": "Site Footer", "content": { "showSignup": true }, "slot": "footer", "sort_order": 0 } + { "block_key": "navbar", "title": "House Navigation", "content": { "menuName": "main", "logoType": "text", "logoText": { "text": "Gotham House" } }, "slot": "header", "sort_order": 0 }, + { "block_key": "slot", "title": "Main Content", "content": { "slotName": "main", "placeholder": "Page content" }, "slot": "main", "sort_order": 0 }, + { "block_key": "footer", "title": "Site Footer", "content": { "layout": "centered", "companyName": "Gotham House", "tagline": "A members' club after dark." }, "slot": "footer", "sort_order": 0 } + ] + }, + { + "key": "gotham:marquee-master", + "title": "Gotham Marquee Master", + "page_templates": ["landing"], + "blocks": [ + { "block_key": "navbar", "title": "House Navigation", "content": { "menuName": "main", "logoType": "text", "logoText": { "text": "Gotham House" } }, "slot": "hero", "sort_order": 0 }, + { "block_key": "gotham:door_strip", "title": "Door Strip", "content": { "label": "The Door", "phone": "", "reserveLabel": "Guest list", "reserveUrl": "/contact", "hours": [] }, "slot": "hero", "sort_order": 1 }, + { "block_key": "slot", "title": "Main Content", "content": { "slotName": "main" }, "slot": "main", "sort_order": 0 }, + { "block_key": "footer", "title": "Site Footer", "content": { "layout": "centered", "companyName": "Gotham House", "tagline": "A members' club after dark." }, "slot": "footer", "sort_order": 0 } ] } ] diff --git a/plugin.mod b/plugin.mod index cc4623f..d606176 100644 --- a/plugin.mod +++ b/plugin.mod @@ -3,7 +3,8 @@ name = "gotham" display_name = "Gotham" scope = "@themes" version = "1.0.0" -description = "Dark, high-contrast BlockNinja theme with bold typography and modern accent panels." +description = "After-dark identity for a nightlife venue or private members' club. Cinematic near-black luxe, brass hairline accents, letterboxed heroes and tall condensed display type." kind = "theme" categories = ["templates"] -tags = ["dark", "high-contrast", "agency", "blog", "professional", "modern", "serif"] +tags = ["dark", "nightlife", "luxury", "club", "cinematic", "brass", "condensed", "hospitality", "events"] +required_icon_packs = ["lucide"] diff --git a/presets.json b/presets.json index 34bd460..9b33a0f 100644 --- a/presets.json +++ b/presets.json @@ -1,502 +1,252 @@ [ { - "id": "dark-knight", - "name": "The Dark Knight", - "description": "Classic Gotham - dark with amber accents", + "id": "velvet-black", + "name": "Velvet Black", + "description": "Deep matte black lifted by brass gilt. The house palette. Silver-screen platinum by day, velvet black after dark.", "theme": { + "mode": "both", "lightColors": { - "background": "0 0% 100%", - "foreground": "0 0% 3.9%", - "card": "0 0% 100%", - "cardForeground": "0 0% 3.9%", - "popover": "0 0% 100%", - "popoverForeground": "0 0% 3.9%", - "primary": "45 93% 47%", - "primaryForeground": "0 0% 0%", - "secondary": "0 0% 96%", - "secondaryForeground": "0 0% 9%", - "muted": "0 0% 96%", - "mutedForeground": "0 0% 45%", - "accent": "45 93% 47%", - "accentForeground": "0 0% 0%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "0 0% 90%", - "input": "0 0% 90%", - "ring": "45 93% 47%" + "background": "40 22% 95%", + "foreground": "30 10% 12%", + "card": "40 24% 98%", + "cardForeground": "30 10% 12%", + "popover": "40 24% 98%", + "popoverForeground": "30 10% 12%", + "primary": "38 58% 42%", + "primaryForeground": "40 30% 96%", + "secondary": "40 12% 88%", + "secondaryForeground": "30 12% 16%", + "muted": "40 12% 90%", + "mutedForeground": "30 8% 40%", + "accent": "36 62% 48%", + "accentForeground": "40 30% 96%", + "destructive": "0 68% 44%", + "destructiveForeground": "40 26% 96%", + "border": "40 18% 78%", + "input": "40 16% 82%", + "ring": "38 58% 44%" }, "darkColors": { - "background": "0 0% 3.9%", - "foreground": "0 0% 98%", - "card": "0 0% 6%", - "cardForeground": "0 0% 98%", - "popover": "0 0% 6%", - "popoverForeground": "0 0% 98%", - "primary": "45 93% 47%", - "primaryForeground": "0 0% 0%", - "secondary": "0 0% 10%", - "secondaryForeground": "0 0% 98%", - "muted": "0 0% 10%", - "mutedForeground": "0 0% 60%", - "accent": "45 93% 47%", - "accentForeground": "0 0% 0%", - "destructive": "0 62% 30%", - "destructiveForeground": "0 0% 98%", - "border": "0 0% 14%", - "input": "0 0% 14%", - "ring": "45 93% 47%" - }, - "mode": "dark" + "background": "30 9% 5%", + "foreground": "40 28% 90%", + "card": "30 9% 8%", + "cardForeground": "40 28% 90%", + "popover": "30 9% 8%", + "popoverForeground": "40 28% 90%", + "primary": "40 66% 54%", + "primaryForeground": "30 22% 6%", + "secondary": "30 8% 14%", + "secondaryForeground": "40 24% 86%", + "muted": "30 7% 12%", + "mutedForeground": "40 12% 62%", + "accent": "38 74% 60%", + "accentForeground": "30 22% 6%", + "destructive": "0 70% 50%", + "destructiveForeground": "40 26% 95%", + "border": "40 24% 20%", + "input": "40 18% 16%", + "ring": "40 66% 54%" + } } }, { - "id": "joker", - "name": "The Joker", - "description": "Chaotic purple and toxic green", + "id": "midnight-brass", + "name": "Midnight Brass", + "description": "Cool blue-black steel with bright brass. A colder, later room.", "theme": { + "mode": "both", "lightColors": { - "background": "0 0% 100%", - "foreground": "270 50% 15%", - "card": "0 0% 98%", - "cardForeground": "270 50% 15%", - "popover": "0 0% 98%", - "popoverForeground": "270 50% 15%", - "primary": "120 80% 35%", - "primaryForeground": "0 0% 100%", - "secondary": "270 40% 90%", - "secondaryForeground": "270 50% 15%", - "muted": "270 20% 95%", - "mutedForeground": "270 30% 40%", - "accent": "300 100% 70%", - "accentForeground": "0 0% 0%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "270 20% 85%", - "input": "270 20% 85%", - "ring": "120 80% 35%" + "background": "220 16% 95%", + "foreground": "222 18% 14%", + "card": "220 20% 98%", + "cardForeground": "222 18% 14%", + "popover": "220 20% 98%", + "popoverForeground": "222 18% 14%", + "primary": "40 60% 44%", + "primaryForeground": "220 20% 96%", + "secondary": "220 12% 88%", + "secondaryForeground": "222 16% 18%", + "muted": "220 12% 90%", + "mutedForeground": "220 8% 40%", + "accent": "40 66% 50%", + "accentForeground": "222 20% 8%", + "destructive": "0 68% 46%", + "destructiveForeground": "220 20% 96%", + "border": "220 14% 78%", + "input": "220 12% 82%", + "ring": "40 60% 46%" }, "darkColors": { - "background": "270 30% 8%", - "foreground": "120 100% 80%", - "card": "270 30% 12%", - "cardForeground": "120 100% 80%", - "popover": "270 30% 12%", - "popoverForeground": "120 100% 80%", - "primary": "120 100% 40%", - "primaryForeground": "270 30% 8%", - "secondary": "270 50% 20%", - "secondaryForeground": "120 100% 80%", - "muted": "270 30% 15%", - "mutedForeground": "270 20% 60%", - "accent": "300 100% 50%", - "accentForeground": "0 0% 0%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "270 30% 20%", - "input": "270 30% 20%", - "ring": "120 100% 40%" - }, - "mode": "dark" + "background": "222 20% 6%", + "foreground": "215 22% 90%", + "card": "222 20% 9%", + "cardForeground": "215 22% 90%", + "popover": "222 20% 9%", + "popoverForeground": "215 22% 90%", + "primary": "42 72% 58%", + "primaryForeground": "222 24% 8%", + "secondary": "222 16% 15%", + "secondaryForeground": "215 20% 86%", + "muted": "222 14% 13%", + "mutedForeground": "215 12% 62%", + "accent": "40 78% 62%", + "accentForeground": "222 24% 8%", + "destructive": "0 72% 52%", + "destructiveForeground": "215 22% 95%", + "border": "220 20% 22%", + "input": "220 16% 18%", + "ring": "42 72% 58%" + } } }, { - "id": "riddler", - "name": "The Riddler", - "description": "Bright neon green with purple mystery", + "id": "noir-rose", + "name": "Noir Rose", + "description": "Near-black warmed with rose-gold. The velvet-rope room.", "theme": { + "mode": "both", "lightColors": { - "background": "0 0% 100%", - "foreground": "0 0% 5%", - "card": "0 0% 98%", - "cardForeground": "0 0% 5%", - "popover": "0 0% 98%", - "popoverForeground": "0 0% 5%", - "primary": "120 70% 35%", - "primaryForeground": "0 0% 100%", - "secondary": "280 50% 85%", - "secondaryForeground": "280 80% 20%", - "muted": "0 0% 96%", - "mutedForeground": "120 30% 35%", - "accent": "280 80% 55%", - "accentForeground": "0 0% 100%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "120 30% 85%", - "input": "0 0% 90%", - "ring": "120 70% 35%" + "background": "20 20% 95%", + "foreground": "18 14% 14%", + "card": "20 24% 98%", + "cardForeground": "18 14% 14%", + "popover": "20 24% 98%", + "popoverForeground": "18 14% 14%", + "primary": "16 52% 50%", + "primaryForeground": "20 30% 97%", + "secondary": "20 14% 88%", + "secondaryForeground": "18 14% 18%", + "muted": "20 12% 90%", + "mutedForeground": "18 10% 40%", + "accent": "12 60% 56%", + "accentForeground": "20 30% 97%", + "destructive": "0 68% 46%", + "destructiveForeground": "20 26% 96%", + "border": "18 18% 78%", + "input": "18 16% 82%", + "ring": "16 52% 50%" }, "darkColors": { - "background": "0 0% 4%", - "foreground": "120 100% 50%", - "card": "0 0% 8%", - "cardForeground": "120 100% 50%", - "popover": "0 0% 8%", - "popoverForeground": "120 100% 50%", - "primary": "120 100% 45%", - "primaryForeground": "0 0% 0%", - "secondary": "280 80% 30%", - "secondaryForeground": "120 100% 50%", - "muted": "0 0% 12%", - "mutedForeground": "120 50% 40%", - "accent": "280 100% 60%", - "accentForeground": "0 0% 100%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "120 100% 20%", - "input": "0 0% 15%", - "ring": "120 100% 45%" - }, - "mode": "dark" + "background": "16 12% 6%", + "foreground": "22 24% 90%", + "card": "16 12% 9%", + "cardForeground": "22 24% 90%", + "popover": "16 12% 9%", + "popoverForeground": "22 24% 90%", + "primary": "18 64% 60%", + "primaryForeground": "16 24% 8%", + "secondary": "16 12% 15%", + "secondaryForeground": "22 22% 86%", + "muted": "16 10% 13%", + "mutedForeground": "22 14% 62%", + "accent": "10 70% 64%", + "accentForeground": "16 24% 8%", + "destructive": "0 72% 54%", + "destructiveForeground": "22 24% 95%", + "border": "18 20% 22%", + "input": "18 16% 18%", + "ring": "18 64% 60%" + } } }, { - "id": "harley-quinn", - "name": "Harley Quinn", - "description": "Bold red, black, and playful pink", + "id": "smoke-silver", + "name": "Smoke & Silver", + "description": "Graphite and cool silver. Restrained, low on gold. The quiet booth.", "theme": { + "mode": "both", "lightColors": { - "background": "0 0% 100%", - "foreground": "0 0% 5%", - "card": "350 50% 98%", - "cardForeground": "0 0% 5%", - "popover": "350 50% 98%", - "popoverForeground": "0 0% 5%", - "primary": "350 85% 50%", - "primaryForeground": "0 0% 100%", - "secondary": "210 80% 90%", - "secondaryForeground": "210 100% 20%", - "muted": "0 0% 96%", - "mutedForeground": "350 20% 40%", - "accent": "330 100% 75%", - "accentForeground": "0 0% 0%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "350 30% 88%", - "input": "0 0% 90%", - "ring": "350 85% 50%" + "background": "210 8% 95%", + "foreground": "210 10% 14%", + "card": "210 10% 98%", + "cardForeground": "210 10% 14%", + "popover": "210 10% 98%", + "popoverForeground": "210 10% 14%", + "primary": "210 8% 38%", + "primaryForeground": "210 12% 97%", + "secondary": "210 8% 88%", + "secondaryForeground": "210 10% 18%", + "muted": "210 8% 90%", + "mutedForeground": "210 6% 42%", + "accent": "42 40% 52%", + "accentForeground": "210 12% 10%", + "destructive": "0 66% 46%", + "destructiveForeground": "210 12% 96%", + "border": "210 8% 78%", + "input": "210 8% 82%", + "ring": "210 8% 42%" }, "darkColors": { - "background": "0 0% 5%", - "foreground": "0 0% 95%", - "card": "350 80% 10%", - "cardForeground": "0 0% 95%", - "popover": "350 80% 10%", - "popoverForeground": "0 0% 95%", - "primary": "350 100% 55%", - "primaryForeground": "0 0% 100%", - "secondary": "210 100% 50%", - "secondaryForeground": "0 0% 100%", - "muted": "0 0% 12%", - "mutedForeground": "350 30% 60%", - "accent": "330 100% 65%", - "accentForeground": "0 0% 0%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "350 50% 20%", - "input": "0 0% 15%", - "ring": "350 100% 55%" - }, - "mode": "dark" + "background": "210 10% 7%", + "foreground": "210 12% 90%", + "card": "210 10% 10%", + "cardForeground": "210 12% 90%", + "popover": "210 10% 10%", + "popoverForeground": "210 12% 90%", + "primary": "210 14% 74%", + "primaryForeground": "210 12% 8%", + "secondary": "210 10% 15%", + "secondaryForeground": "210 12% 86%", + "muted": "210 8% 13%", + "mutedForeground": "210 8% 60%", + "accent": "42 56% 60%", + "accentForeground": "210 12% 8%", + "destructive": "0 70% 52%", + "destructiveForeground": "210 12% 95%", + "border": "210 12% 22%", + "input": "210 10% 18%", + "ring": "210 14% 74%" + } } }, { - "id": "mr-freeze", - "name": "Mr. Freeze", - "description": "Cold ice blue and frozen white", + "id": "bourbon", + "name": "Bourbon", + "description": "Espresso black and whisky amber. The last-pour palette.", "theme": { + "mode": "both", "lightColors": { - "background": "0 0% 100%", - "foreground": "200 60% 10%", - "card": "200 40% 98%", - "cardForeground": "200 60% 10%", - "popover": "200 40% 98%", - "popoverForeground": "200 60% 10%", - "primary": "195 90% 45%", - "primaryForeground": "0 0% 100%", - "secondary": "200 40% 92%", - "secondaryForeground": "200 60% 10%", - "muted": "200 30% 95%", - "mutedForeground": "200 30% 40%", - "accent": "180 80% 60%", - "accentForeground": "200 60% 10%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "200 30% 88%", - "input": "200 30% 85%", - "ring": "195 90% 45%" + "background": "36 24% 94%", + "foreground": "28 18% 13%", + "card": "36 26% 98%", + "cardForeground": "28 18% 13%", + "popover": "36 26% 98%", + "popoverForeground": "28 18% 13%", + "primary": "30 62% 42%", + "primaryForeground": "36 30% 96%", + "secondary": "36 16% 87%", + "secondaryForeground": "28 16% 17%", + "muted": "36 14% 89%", + "mutedForeground": "28 12% 40%", + "accent": "26 66% 48%", + "accentForeground": "36 30% 96%", + "destructive": "0 68% 44%", + "destructiveForeground": "36 26% 96%", + "border": "34 20% 76%", + "input": "34 18% 80%", + "ring": "30 62% 44%" }, "darkColors": { - "background": "200 50% 8%", - "foreground": "200 100% 95%", - "card": "200 50% 12%", - "cardForeground": "200 100% 95%", - "popover": "200 50% 12%", - "popoverForeground": "200 100% 95%", - "primary": "195 100% 50%", - "primaryForeground": "200 50% 8%", - "secondary": "200 60% 20%", - "secondaryForeground": "200 100% 95%", - "muted": "200 40% 15%", - "mutedForeground": "200 40% 60%", - "accent": "180 100% 70%", - "accentForeground": "200 50% 8%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "200 40% 25%", - "input": "200 40% 20%", - "ring": "195 100% 50%" - }, - "mode": "dark" - } - }, - { - "id": "poison-ivy", - "name": "Poison Ivy", - "description": "Deep forest green with seductive red", - "theme": { - "lightColors": { - "background": "0 0% 100%", - "foreground": "140 50% 12%", - "card": "140 30% 98%", - "cardForeground": "140 50% 12%", - "popover": "140 30% 98%", - "popoverForeground": "140 50% 12%", - "primary": "140 60% 35%", - "primaryForeground": "0 0% 100%", - "secondary": "0 50% 92%", - "secondaryForeground": "0 70% 25%", - "muted": "140 20% 95%", - "mutedForeground": "140 25% 40%", - "accent": "0 70% 55%", - "accentForeground": "0 0% 100%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "140 25% 88%", - "input": "140 20% 85%", - "ring": "140 60% 35%" - }, - "darkColors": { - "background": "140 40% 6%", - "foreground": "140 60% 90%", - "card": "140 40% 10%", - "cardForeground": "140 60% 90%", - "popover": "140 40% 10%", - "popoverForeground": "140 60% 90%", - "primary": "140 70% 40%", - "primaryForeground": "0 0% 100%", - "secondary": "0 70% 40%", - "secondaryForeground": "0 0% 100%", - "muted": "140 30% 15%", - "mutedForeground": "140 30% 55%", - "accent": "0 80% 50%", - "accentForeground": "0 0% 100%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "140 30% 20%", - "input": "140 30% 15%", - "ring": "140 70% 40%" - }, - "mode": "dark" - } - }, - { - "id": "two-face", - "name": "Two-Face", - "description": "Split personality - half dark, half light", - "theme": { - "lightColors": { - "background": "0 0% 100%", - "foreground": "0 0% 5%", - "card": "0 0% 98%", - "cardForeground": "0 0% 5%", - "popover": "0 0% 98%", - "popoverForeground": "0 0% 5%", - "primary": "0 0% 10%", - "primaryForeground": "0 0% 100%", - "secondary": "0 0% 92%", - "secondaryForeground": "0 0% 10%", - "muted": "0 0% 96%", - "mutedForeground": "0 0% 45%", - "accent": "45 100% 50%", - "accentForeground": "0 0% 0%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "0 0% 88%", - "input": "0 0% 85%", - "ring": "0 0% 10%" - }, - "darkColors": { - "background": "0 0% 5%", - "foreground": "0 0% 95%", - "card": "0 0% 10%", - "cardForeground": "0 0% 95%", - "popover": "0 0% 10%", - "popoverForeground": "0 0% 95%", - "primary": "0 0% 95%", - "primaryForeground": "0 0% 5%", - "secondary": "0 0% 20%", - "secondaryForeground": "0 0% 95%", - "muted": "0 0% 15%", - "mutedForeground": "0 0% 55%", - "accent": "45 100% 50%", - "accentForeground": "0 0% 0%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "0 0% 25%", - "input": "0 0% 20%", - "ring": "0 0% 95%" - }, - "mode": "dark" - } - }, - { - "id": "catwoman", - "name": "Catwoman", - "description": "Sleek purple and black elegance", - "theme": { - "lightColors": { - "background": "0 0% 100%", - "foreground": "280 30% 15%", - "card": "280 20% 98%", - "cardForeground": "280 30% 15%", - "popover": "280 20% 98%", - "popoverForeground": "280 30% 15%", - "primary": "280 50% 45%", - "primaryForeground": "0 0% 100%", - "secondary": "280 25% 92%", - "secondaryForeground": "280 30% 15%", - "muted": "280 15% 96%", - "mutedForeground": "280 15% 40%", - "accent": "320 70% 60%", - "accentForeground": "0 0% 100%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "280 20% 88%", - "input": "280 15% 85%", - "ring": "280 50% 45%" - }, - "darkColors": { - "background": "280 20% 6%", - "foreground": "280 10% 90%", - "card": "280 20% 10%", - "cardForeground": "280 10% 90%", - "popover": "280 20% 10%", - "popoverForeground": "280 10% 90%", - "primary": "280 60% 55%", - "primaryForeground": "0 0% 100%", - "secondary": "280 30% 20%", - "secondaryForeground": "280 10% 90%", - "muted": "280 15% 15%", - "mutedForeground": "280 10% 55%", - "accent": "320 80% 60%", - "accentForeground": "0 0% 100%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "280 20% 22%", - "input": "280 20% 18%", - "ring": "280 60% 55%" - }, - "mode": "dark" - } - }, - { - "id": "scarecrow", - "name": "Scarecrow", - "description": "Fear-inducing orange and decayed brown", - "theme": { - "lightColors": { - "background": "0 0% 100%", - "foreground": "30 40% 15%", - "card": "35 30% 98%", - "cardForeground": "30 40% 15%", - "popover": "35 30% 98%", - "popoverForeground": "30 40% 15%", - "primary": "25 85% 45%", - "primaryForeground": "0 0% 100%", - "secondary": "30 30% 92%", - "secondaryForeground": "30 40% 15%", - "muted": "30 20% 95%", - "mutedForeground": "30 25% 40%", - "accent": "15 90% 50%", - "accentForeground": "0 0% 100%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "30 25% 88%", - "input": "30 20% 85%", - "ring": "25 85% 45%" - }, - "darkColors": { - "background": "30 30% 6%", - "foreground": "35 60% 85%", - "card": "30 30% 10%", - "cardForeground": "35 60% 85%", - "popover": "30 30% 10%", - "popoverForeground": "35 60% 85%", - "primary": "25 90% 50%", - "primaryForeground": "0 0% 0%", - "secondary": "30 40% 20%", - "secondaryForeground": "35 60% 85%", - "muted": "30 25% 15%", - "mutedForeground": "30 20% 50%", - "accent": "15 100% 45%", - "accentForeground": "0 0% 100%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "30 30% 20%", - "input": "30 30% 15%", - "ring": "25 90% 50%" - }, - "mode": "dark" - } - }, - { - "id": "bane", - "name": "Bane", - "description": "Military tactical green and black", - "theme": { - "lightColors": { - "background": "0 0% 100%", - "foreground": "100 30% 15%", - "card": "100 20% 98%", - "cardForeground": "100 30% 15%", - "popover": "100 20% 98%", - "popoverForeground": "100 30% 15%", - "primary": "100 45% 30%", - "primaryForeground": "0 0% 100%", - "secondary": "100 20% 92%", - "secondaryForeground": "100 30% 15%", - "muted": "100 15% 95%", - "mutedForeground": "100 20% 40%", - "accent": "45 75% 50%", - "accentForeground": "0 0% 0%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "100 20% 88%", - "input": "100 15% 85%", - "ring": "100 45% 30%" - }, - "darkColors": { - "background": "100 20% 5%", - "foreground": "100 10% 85%", - "card": "100 20% 9%", - "cardForeground": "100 10% 85%", - "popover": "100 20% 9%", - "popoverForeground": "100 10% 85%", - "primary": "100 50% 35%", - "primaryForeground": "0 0% 100%", - "secondary": "100 25% 18%", - "secondaryForeground": "100 10% 85%", - "muted": "100 15% 14%", - "mutedForeground": "100 10% 50%", - "accent": "45 80% 45%", - "accentForeground": "0 0% 0%", - "destructive": "0 84% 60%", - "destructiveForeground": "0 0% 98%", - "border": "100 20% 18%", - "input": "100 20% 14%", - "ring": "100 50% 35%" - }, - "mode": "dark" + "background": "28 16% 6%", + "foreground": "36 28% 89%", + "card": "28 16% 9%", + "cardForeground": "36 28% 89%", + "popover": "28 16% 9%", + "popoverForeground": "36 28% 89%", + "primary": "32 72% 54%", + "primaryForeground": "28 24% 7%", + "secondary": "28 14% 15%", + "secondaryForeground": "36 24% 85%", + "muted": "28 12% 13%", + "mutedForeground": "36 14% 60%", + "accent": "24 80% 58%", + "accentForeground": "28 24% 7%", + "destructive": "0 72% 52%", + "destructiveForeground": "36 26% 95%", + "border": "30 22% 22%", + "input": "30 18% 18%", + "ring": "32 72% 54%" + } } } ] diff --git a/seed/seed.json b/seed/seed.json new file mode 100644 index 0000000..4a58254 --- /dev/null +++ b/seed/seed.json @@ -0,0 +1,255 @@ +{ + "demo": true, + "settings": { + "merge": { + "companyName": "Gotham House", + "tagline": "A members' club after dark." + } + }, + "data_tables": [ + { + "key": "contact_submissions", + "name": "Door Enquiries", + "description": "Seeded contact-form submissions for the Gotham House demo. A submission becomes a row here and emails the site admins.", + "columns": [ + { "key": "name", "label": "Name", "type": "text", "required": true }, + { "key": "email", "label": "Email", "type": "email", "required": true }, + { "key": "party", "label": "Party size", "type": "text", "required": false }, + { "key": "message", "label": "Message", "type": "text", "required": true } + ] + } + ], + "pages": [ + { + "slug": "/", + "title": "Gotham House", + "template_key": "landing", + "blocks": [ + { + "block_key": "hero", + "title": "Hero", + "slot": "main", + "sort_order": 1, + "content": { + "template": "centered", + "minHeight": "75vh", + "eyebrow": "Members only", + "headline": "Gotham House", + "subheadline": "A members' club after dark.", + "description": "Late rooms, a long bar and a short guest list. Doors from nine, Thursday to Sunday. Bring your card.", + "ctaPrimary": { "text": "Request the guest list", "url": "/contact" }, + "ctaSecondary": { "text": "See the programme", "url": "#programme" } + } + }, + { + "block_key": "gotham:events_marquee", + "title": "Programme", + "slot": "main", + "sort_order": 2, + "content": { + "eyebrow": "The programme", + "title": "Tonight and after", + "events": [ + { "date": "Thu", "name": "Late Set", "room": "Main Room", "note": "Resident selectors. Slow start, long finish.", "url": "/contact" }, + { "date": "Fri", "name": "The Gilt Sessions", "room": "The Brass Room", "note": "House and disco on the good system.", "url": "/contact" }, + { "date": "Sat", "name": "Members' Night", "room": "Whole House", "note": "Card on the door. No list, no entry.", "url": "/contact" }, + { "date": "Sun", "name": "Last Pour", "room": "The Cellar Bar", "note": "Quiet room. Records and a nightcap.", "url": "/contact" } + ] + } + }, + { + "block_key": "gotham:membership_tiers", + "title": "Membership", + "slot": "main", + "sort_order": 3, + "content": { + "eyebrow": "Membership", + "title": "Join the house", + "intro": "Two ways in. Both start at the door.", + "tiers": [ + { + "name": "House", + "price": "$40", + "cadence": "/ month", + "description": "The standard card. Enough for most nights.", + "featured": false, + "applyLabel": "Apply", + "applyUrl": "/contact", + "features": [ + { "label": "Priority on the guest list" }, + { "label": "The main room and the cellar bar" }, + { "label": "Two guests a night" } + ] + }, + { + "name": "Brass", + "price": "$120", + "cadence": "/ month", + "description": "The full card. Every room, every night.", + "featured": true, + "applyLabel": "Apply", + "applyUrl": "/contact", + "features": [ + { "label": "Everything in House" }, + { "label": "The Brass Room and private booths" }, + { "label": "First call on bottle service" }, + { "label": "Four guests a night" } + ] + } + ] + } + }, + { + "block_key": "gotham:bottle_menu", + "title": "Bottle service", + "slot": "main", + "sort_order": 4, + "content": { + "eyebrow": "The cellar", + "title": "Bottle service", + "footnote": "Booths hold six. Ask the host for the full list.", + "sections": [ + { + "title": "Champagne", + "items": [ + { "name": "House brut", "note": "By the glass or the bottle.", "price": "$95" }, + { "name": "Vintage rose", "note": "A short shelf. Ask first.", "price": "$180" } + ] + }, + { + "title": "Spirits", + "items": [ + { "name": "Aged rye", "note": "Neat, one large cube.", "price": "$140" }, + { "name": "Single malt", "note": "Islay. Bring water.", "price": "$160" } + ] + } + ] + } + }, + { + "block_key": "cta", + "title": "Closing CTA", + "slot": "cta", + "sort_order": 1, + "content": { + "background": "band", + "heading": "The list closes at nine", + "text": "Send your name and party. We reply the same day.", + "primaryLabel": "Request the guest list", + "primaryUrl": "/contact" + } + } + ] + }, + { + "slug": "/about", + "title": "The House", + "template_key": "default", + "blocks": [ + { "block_key": "heading", "title": "Heading", "slot": "main", "sort_order": 1, "content": { "text": "The House", "level": 1 } }, + { "block_key": "rich-text", "title": "Story", "slot": "main", "sort_order": 2, "content": { "html": "

Gotham House keeps late hours behind an unmarked door. We run four nights a week and hold the rest of the week back.

The rooms are dark by design. The bar is long. The list is short. Members come first, and their guests come with them.

" } }, + { "block_key": "divider", "title": "Divider", "slot": "main", "sort_order": 3, "content": { "variant": "ornament", "icon": "lucide:diamond" } }, + { "block_key": "quote", "title": "Quote", "slot": "main", "sort_order": 4, "content": { "style": "block", "align": "center", "quote": "Come late. Stay later.", "attribution": "The House" } } + ] + }, + { + "slug": "/blog", + "title": "The Journal", + "template_key": "blog-index", + "blocks": [ + { "block_key": "card", "title": "Post: The Door", "slot": "main", "sort_order": 1, "content": { "layout": "vertical", "title": "How the door works", "text": "

The list, the card and the guests. What to send and when.

", "link": "/blog/how-the-door-works", "linkLabel": "Read on" } }, + { "block_key": "card", "title": "Post: A Night", "slot": "main", "sort_order": 2, "content": { "layout": "vertical", "title": "A night at the house", "text": "

From the first pour to the last record. How the evening runs.

", "link": "/blog/a-night-at-the-house", "linkLabel": "Read on" } }, + { "block_key": "card", "title": "Post: The Cellar", "slot": "main", "sort_order": 3, "content": { "layout": "vertical", "title": "Notes from the cellar", "text": "

What we pour after midnight and why the list stays short.

", "link": "/blog/notes-from-the-cellar", "linkLabel": "Read on" } } + ] + }, + { + "slug": "/blog/how-the-door-works", + "title": "How the door works", + "template_key": "article", + "parent_slug": "/blog", + "blocks": [ + { "block_key": "heading", "title": "Title", "slot": "main", "sort_order": 1, "content": { "text": "How the door works", "level": 1 } }, + { "block_key": "rich-text", "title": "Body", "slot": "main", "sort_order": 2, "content": { "html": "

Send your name and party by nine. We hold the list until then and reply the same day.

Members lead. Guests come with them, and there is a cap. Bring your card. The door checks it.

" } } + ] + }, + { + "slug": "/blog/a-night-at-the-house", + "title": "A night at the house", + "template_key": "article", + "parent_slug": "/blog", + "blocks": [ + { "block_key": "heading", "title": "Title", "slot": "main", "sort_order": 1, "content": { "text": "A night at the house", "level": 1 } }, + { "block_key": "rich-text", "title": "Body", "slot": "main", "sort_order": 2, "content": { "html": "

Doors open at nine. The first set starts slow. The main room fills after eleven and holds until the lights come up.

The cellar bar stays quiet. That is the point. Records, a nightcap and the last pour.

" } } + ] + }, + { + "slug": "/blog/notes-from-the-cellar", + "title": "Notes from the cellar", + "template_key": "article", + "parent_slug": "/blog", + "blocks": [ + { "block_key": "heading", "title": "Title", "slot": "main", "sort_order": 1, "content": { "text": "Notes from the cellar", "level": 1 } }, + { "block_key": "rich-text", "title": "Body", "slot": "main", "sort_order": 2, "content": { "html": "

The list is short by choice. We pour champagne by the glass, keep a bench of rye and hold a small shelf for members who ask.

Tell the host what you are drinking. The rest follows.

" } } + ] + }, + { + "slug": "/contact", + "title": "The Door", + "template_key": "contact", + "blocks": [ + { + "block_key": "contact-form", + "title": "Guest List Enquiry", + "slot": "main", + "sort_order": 1, + "content": { + "heading": "Request the guest list", + "description": "Send your name, the night and the party. We reply the same day.", + "submitLabel": "Send to the door", + "successMessage": "Thank you. Your name is with the door. We will reply by email.", + "fields": [ + { "name": "name", "label": "Your name", "type": "text", "required": true, "width": "half" }, + { "name": "email", "label": "Email", "type": "email", "required": true, "width": "half" }, + { "name": "party", "label": "Party size", "type": "text", "required": false, "width": "half" }, + { "name": "message", "label": "Which night, and any notes", "type": "textarea", "required": true, "width": "full" } + ], + "formConfig": { "enabled": true, "captchaEnabled": false, "targetTable": "contact_submissions" } + } + }, + { + "block_key": "hours-location", + "title": "Door & Hours", + "slot": "aside", + "sort_order": 1, + "content": { + "heading": "The Door", + "hours": [ + { "day": "Thursday", "hours": "9pm to late" }, + { "day": "Friday to Saturday", "hours": "9pm to 4am" }, + { "day": "Sunday", "hours": "9pm to 2am" }, + { "day": "Monday to Wednesday", "closed": true } + ], + "specialHoursNote": "Members' Night runs Saturday. Card on the door.", + "address": "1 Vane Court\nThe Old Quarter", + "phone": "+1 555 0139" + } + } + ] + }, + { + "slug": "/login", + "title": "Members", + "template_key": "auth", + "blocks": [ + { "block_key": "auth-form", "title": "Sign in", "slot": "main", "sort_order": 1, "content": { "default_tab": "login", "show_social": false } }, + { "block_key": "text", "title": "Foot", "slot": "footer", "sort_order": 1, "content": { "text": "

Members book priority nights and private booths.

" } } + ] + } + ], + "menu_items": [ + { "menu": "main", "label": "Home", "page_slug": "/", "sort_order": 1 }, + { "menu": "main", "label": "The House", "page_slug": "/about", "sort_order": 2 }, + { "menu": "main", "label": "The Journal", "page_slug": "/blog", "sort_order": 3 }, + { "menu": "main", "label": "The Door", "page_slug": "/contact", "sort_order": 4 } + ] +} diff --git a/seed/workflows.json b/seed/workflows.json new file mode 100644 index 0000000..7abcff2 --- /dev/null +++ b/seed/workflows.json @@ -0,0 +1,19 @@ +{ + "workflows": [ + { + "key": "contact_notify_admins", + "name": "Door enquiry to admins", + "description": "On a guest-list form submission, email the site admins.", + "enabled": true, + "trigger": { "type": "row_inserted", "table": "contact_submissions" }, + "steps": [ + { + "type": "email", + "name": "Email admins", + "template": "Form Submission Notification", + "recipients": { "mode": "admins", "scope": "all" } + } + ] + } + ] +} diff --git a/templates/email/gotham.ninjatpl b/templates/email/gotham.ninjatpl index 883b9fc..bf995b7 100644 --- a/templates/email/gotham.ninjatpl +++ b/templates/email/gotham.ninjatpl @@ -1,99 +1,64 @@ - - - - - - - {{ site_name }} - - - - - {% if preview_text %}
{{ preview_text }}
 ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌
{% endif %} - - - - - -
- - - - - - - - - - - - - - - -
- + + + + + + + {{ site_name }} + + + + {% if preview_text %}
{{ preview_text }}
{% endif %} + + + + +
+ + + + + + + + + + + + + + +
+ diff --git a/templates/gotham/article.ninjatpl b/templates/gotham/article.ninjatpl new file mode 100644 index 0000000..a0ea1f6 --- /dev/null +++ b/templates/gotham/article.ninjatpl @@ -0,0 +1,23 @@ + + +{{ head_html|safe }} + + {{ admin_banner_html|safe }} +
+
{{ slots.header|safe }}
+
+
+
+ {% if slots.main %}
{{ slots.main|safe }}
{% else %}

No content blocks assigned to this page.

{% endif %} +
+ +
+
+
{{ slots.footer|safe }}
+
+ {{ body_end_html|safe }} + + + diff --git a/templates/gotham/auth.ninjatpl b/templates/gotham/auth.ninjatpl new file mode 100644 index 0000000..420c839 --- /dev/null +++ b/templates/gotham/auth.ninjatpl @@ -0,0 +1,21 @@ + + +{{ head_html|safe }} + + {{ admin_banner_html|safe }} +
+
+ + {% if site_settings.Logo %}{{ site_settings.LogoAlt }}{% else %}{{ site_settings.Title|default:"BlockNinja" }}{% endif %} + + +
{% if slots.main %}{{ slots.main|safe }}{% else %}

No form assigned to this page.

{% endif %}
+ {% if slots.footer %}
{{ slots.footer|safe }}
{% endif %} +
+
+ {{ body_end_html|safe }} + + + diff --git a/templates/gotham/blog-index.ninjatpl b/templates/gotham/blog-index.ninjatpl new file mode 100644 index 0000000..0b17027 --- /dev/null +++ b/templates/gotham/blog-index.ninjatpl @@ -0,0 +1,26 @@ + + +{{ head_html|safe }} + + {{ admin_banner_html|safe }} + {% if slots.header %}
{{ slots.header|safe }}
{% endif %} +
+
+ {% if title %} +
+

{{ title }}

+ {% if page_meta.MetaDescription %}

{{ page_meta.MetaDescription }}

{% endif %} + +
+ {% endif %} + {% if slots.featured %}
{{ slots.featured|safe }}
{% endif %} + {% if slots.main %}
{{ slots.main|safe }}
{% else %}

No posts published yet.

{% endif %} +
+
+ {% if slots.footer %}
{{ slots.footer|safe }}
{% endif %} + {{ body_end_html|safe }} + + + diff --git a/templates/gotham/centered.ninjatpl b/templates/gotham/centered.ninjatpl index 039f7af..ff43912 100644 --- a/templates/gotham/centered.ninjatpl +++ b/templates/gotham/centered.ninjatpl @@ -1,11 +1,16 @@ - + {{ head_html|safe }} - + {{ admin_banner_html|safe }} -
{{ slots.header|safe }}
-
{% if slots.main %}
{{ slots.main|safe }}
{% else %}

No content blocks assigned to this page.

{% endif %}
-
{{ slots.footer|safe }}
+
{{ slots.header|safe }}
+
+ {% if slots.main %}
{{ slots.main|safe }}
{% else %}

No content blocks assigned to this page.

{% endif %} +
+
{{ slots.footer|safe }}
{{ body_end_html|safe }} + diff --git a/templates/gotham/contact.ninjatpl b/templates/gotham/contact.ninjatpl new file mode 100644 index 0000000..4115730 --- /dev/null +++ b/templates/gotham/contact.ninjatpl @@ -0,0 +1,25 @@ + + +{{ head_html|safe }} + + {{ admin_banner_html|safe }} + {% if slots.header %}
{{ slots.header|safe }}
{% endif %} +
+
+ {% if slots.aside %} +
+
{% if slots.main %}{{ slots.main|safe }}{% endif %}
+ +
+ {% else %} +
{% if slots.main %}{{ slots.main|safe }}{% else %}

No content blocks assigned to this page.

{% endif %}
+ {% endif %} +
+
+ {% if slots.footer %}
{{ slots.footer|safe }}
{% endif %} + {{ body_end_html|safe }} + + + diff --git a/templates/gotham/default.ninjatpl b/templates/gotham/default.ninjatpl index a1a18bc..2117930 100644 --- a/templates/gotham/default.ninjatpl +++ b/templates/gotham/default.ninjatpl @@ -1,11 +1,20 @@ - + {{ head_html|safe }} - + {{ admin_banner_html|safe }} -
{{ slots.header|safe }}
-
{% if slots.main %}{{ slots.main|safe }}{% else %}

No content blocks assigned to this page.

{% endif %}
-
{{ slots.footer|safe }}
+
+
{{ slots.header|safe }}
+
+
+ {% if slots.main %}{{ slots.main|safe }}{% else %}

No content blocks assigned to this page.

{% endif %} +
+
+
{{ slots.footer|safe }}
+
{{ body_end_html|safe }} + diff --git a/templates/gotham/full-width.ninjatpl b/templates/gotham/full-width.ninjatpl index 9fafdf1..4313c3a 100644 --- a/templates/gotham/full-width.ninjatpl +++ b/templates/gotham/full-width.ninjatpl @@ -1,11 +1,18 @@ - + {{ head_html|safe }} - + {{ admin_banner_html|safe }}
{{ slots.header|safe }}
-
{% if slots.main %}{{ slots.main|safe }}{% else %}

No content blocks assigned to this page.

{% endif %}
-
{{ slots.footer|safe }}
+
+ {% if slots.main %}{{ slots.main|safe }}{% else %}

No content blocks assigned to this page.

{% endif %} +
+
+
{{ slots.footer|safe }}
+
{{ body_end_html|safe }} + diff --git a/templates/gotham/landing.ninjatpl b/templates/gotham/landing.ninjatpl index 283fc81..9b8d9c6 100644 --- a/templates/gotham/landing.ninjatpl +++ b/templates/gotham/landing.ninjatpl @@ -1,12 +1,19 @@ - + {{ head_html|safe }} - + {{ admin_banner_html|safe }}
{{ slots.hero|safe }}
-
{% if slots.main %}
{{ slots.main|safe }}
{% endif %}
+
+ {% if slots.main %}{{ slots.main|safe }}{% endif %} +
{{ slots.cta|safe }}
-
{{ slots.footer|safe }}
+
+
{{ slots.footer|safe }}
+
{{ body_end_html|safe }} + diff --git a/templates/overrides/gotham/announcement-bar.ninjatpl b/templates/overrides/gotham/announcement-bar.ninjatpl new file mode 100644 index 0000000..40b2af6 --- /dev/null +++ b/templates/overrides/gotham/announcement-bar.ninjatpl @@ -0,0 +1,21 @@ +{# announcement-bar override — gilded banner. Dismiss {% endif %} diff --git a/templates/overrides/gotham/audio-embed.ninjatpl b/templates/overrides/gotham/audio-embed.ninjatpl new file mode 100644 index 0000000..fa071d1 --- /dev/null +++ b/templates/overrides/gotham/audio-embed.ninjatpl @@ -0,0 +1,16 @@ +{# audio-embed override — gold-framed player card. Fields + facade JS mirror builtin verbatim: url, media, artwork, title, artist, download. #} +
{% if artwork %}
{% img artwork alt=title|default:"" class="h-full w-full object-cover" %}
{% endif %}
{% if title %}

{{ title }}

{% endif %}{% if artist %}

{{ artist }}

{% endif %}
{% if download %}::lucide:download:sm:: Download{% endif %}
diff --git a/templates/overrides/gotham/auth-form.ninjatpl b/templates/overrides/gotham/auth-form.ninjatpl new file mode 100644 index 0000000..2ac6861 --- /dev/null +++ b/templates/overrides/gotham/auth-form.ninjatpl @@ -0,0 +1,33 @@ +{# auth-form override — gilded login/register. Wiring is UNTOUCHABLE and reproduced exactly from builtin auth_blocks.go: single shared #auth-message, /api/auth/login (email,password) and /api/auth/register (username,email,password), hx-target #auth-message. Captcha widget injected from _captcha_widget when captchaEnabled (server enforces). Fields: default_tab, show_social (social omitted — needs Go/site config; graceful). #} +{% if context.isPublicLoggedIn %} +
+

You are signed in as {{ context.publicUsername }}

+ My account +
+{% else %} +
+
+
+ + +
+
+
+
+
+ {% if _captcha_widget %}{{ _captcha_widget|safe }}{% endif %} + +

Forgot password?

+
+
+
+
+
+
+
+ {% if _captcha_widget %}{{ _captcha_widget|safe }}{% endif %} + +
+
+
+{% endif %} diff --git a/templates/overrides/gotham/auth-status.ninjatpl b/templates/overrides/gotham/auth-status.ninjatpl new file mode 100644 index 0000000..b468f73 --- /dev/null +++ b/templates/overrides/gotham/auth-status.ninjatpl @@ -0,0 +1,31 @@ +{# auth-status override — header login state. Logged-out: Sign in / Reserve links. Logged-in: gold monogram + dropdown (logout posts /api/auth/logout). Driven by context.isPublicLoggedIn / context.publicDisplayName / context.publicUsername. #} +{% if context.isPublicLoggedIn %} +
+ + + +
+{% else %} + +{% endif %} diff --git a/templates/overrides/gotham/author-bio-hero.ninjatpl b/templates/overrides/gotham/author-bio-hero.ninjatpl new file mode 100644 index 0000000..064c3cf --- /dev/null +++ b/templates/overrides/gotham/author-bio-hero.ninjatpl @@ -0,0 +1,22 @@ +{# author-bio-hero (gotham) — author-page header from the `authors` provider. #} +{% if author %} +
+
+{% if showAvatar and author.avatar_url %}
{% img author.avatar_url alt=author.display_name class="h-full w-full object-cover" %}
{% endif %} +
+

{{ author.display_name }}

+{% if author.job_title or author.company %}

{{ author.job_title }}{% if author.job_title and author.company %} · {% endif %}{{ author.company }}

{% endif %} +{% if author.bio %}

{{ author.bio }}

{% endif %} +
+{% if showPostCount %}{{ author.post_count|default:0 }} post{% if author.post_count != 1 %}s{% endif %}{% endif %} +{% if author.location %}{{ author.location }}{% endif %} +
+{% if showSocial %}
+{% if author.website_url %}{% endif %} +{% if author.twitter_handle %}{% endif %} +{% if author.linkedin_url %}{% endif %} +{% if author.github_url %}{% endif %} +
{% endif %} +
+
+{% endif %} diff --git a/templates/overrides/gotham/author-bio.ninjatpl b/templates/overrides/gotham/author-bio.ninjatpl new file mode 100644 index 0000000..0603397 --- /dev/null +++ b/templates/overrides/gotham/author-bio.ninjatpl @@ -0,0 +1,14 @@ +{# author-bio (gotham) — byline card sourced from the `post` provider's author_* fields. #} +{% if post.author_name %} + +{% endif %} diff --git a/templates/overrides/gotham/blog-hero.ninjatpl b/templates/overrides/gotham/blog-hero.ninjatpl new file mode 100644 index 0000000..031e70a --- /dev/null +++ b/templates/overrides/gotham/blog-hero.ninjatpl @@ -0,0 +1,24 @@ +{# blog-hero (gotham) — blog-index header + featured posts from the `posts` provider. #} +
+
+
+{% if title %}

{{ title }}

{% endif %} +{% if subtitle %}

{{ subtitle }}

{% endif %} +
+{% if posts %} +
+{% for post in posts %} + +{% endfor %} +
+{% endif %} +
+
diff --git a/templates/overrides/gotham/breadcrumbs.ninjatpl b/templates/overrides/gotham/breadcrumbs.ninjatpl new file mode 100644 index 0000000..fd5ea69 --- /dev/null +++ b/templates/overrides/gotham/breadcrumbs.ninjatpl @@ -0,0 +1,15 @@ +{# breadcrumbs (gotham) — trail from the `breadcrumbs` provider (page ancestry). #} +{# showHome prepends a Home link; separator is text ("/") for default or a chevron #} +{# for the arrows template. The trailing is_current item renders as plain text. #} +{% set arrows = template == "arrows" %} + diff --git a/templates/overrides/gotham/button.ninjatpl b/templates/overrides/gotham/button.ninjatpl new file mode 100644 index 0000000..1d072c3 --- /dev/null +++ b/templates/overrides/gotham/button.ninjatpl @@ -0,0 +1,10 @@ +{# button override — gold-ringed lacquer pill. Fields (new builtin contract, per OVERRIDE-CONTRACT §4): link, style, label, size, icon, iconPosition, newTab, align. #} +{% with align=align|default:"left" %} + +{% endwith %} diff --git a/templates/overrides/gotham/card.ninjatpl b/templates/overrides/gotham/card.ninjatpl new file mode 100644 index 0000000..e24cb18 --- /dev/null +++ b/templates/overrides/gotham/card.ninjatpl @@ -0,0 +1,4 @@ +{# card override — angular gold Deco panel. Fields mirror builtin: layout, link, media, title, text, linkLabel. Media via {% img %}. #} +{% with layout=layout|default:"vertical" %} + +{% endwith %} diff --git a/templates/overrides/gotham/category-list.ninjatpl b/templates/overrides/gotham/category-list.ninjatpl new file mode 100644 index 0000000..db3ed27 --- /dev/null +++ b/templates/overrides/gotham/category-list.ninjatpl @@ -0,0 +1,18 @@ +{# category-list (gotham) — from the `categories` provider. list or pills. #} +{% set pills = style == "pills" %} +
+{% if heading %}

{{ heading }}

{% endif %} +{% if pills %} +
+{% for cat in categories %} +{{ cat.name }}{% if showCount %}{{ cat.post_count }}{% endif %} +{% endfor %} +
+{% else %} + +{% endif %} +
diff --git a/templates/overrides/gotham/contact-card.ninjatpl b/templates/overrides/gotham/contact-card.ninjatpl new file mode 100644 index 0000000..1222344 --- /dev/null +++ b/templates/overrides/gotham/contact-card.ninjatpl @@ -0,0 +1,17 @@ +
+
+ {% if heading %}

{{ heading }}

{% endif %} + {% if description %}

{{ description }}

{% endif %} +
+ {% for channel in channels %} +
+ {% if channel.icon %}{% endif %} +
+ {% if channel.label %}
{{ channel.label }}
{% endif %} + {% if channel.value %}
{% if channel.link %}{{ channel.value }}{% else %}{{ channel.value }}{% endif %}
{% endif %} +
+
+ {% endfor %} +
+
+
diff --git a/templates/overrides/gotham/contact-form.ninjatpl b/templates/overrides/gotham/contact-form.ninjatpl new file mode 100644 index 0000000..6142918 --- /dev/null +++ b/templates/overrides/gotham/contact-form.ninjatpl @@ -0,0 +1,43 @@ +{# contact-form override — reservations enquiry. ALL form wiring preserved verbatim from builtin: bid, {% form %} action/hx attrs, honeypot, field loop, form.submitted/errors, submit target. Only inputs restyled to Art Deco. #} +{% with bid=_block_id|default:context.blockId %} +
+
+ {% if form.submitted %} +
+
::lucide:check:lg::
+

{{ form.message|default:successMessage|default:"Thank you. Your table request has been received." }}

+
+ {% else %} +
+ {% if heading %}

{{ heading }}

{% endif %} + {% if description %}

{{ description }}

{% endif %} + +
+ {% if form.errors._form %}
{{ form.errors._form }}
{% endif %} + {% with formAction="/api/blocks/"|add:bid|add:"/submit" formTarget="#contact-form-"|add:bid %} + {% form action=formAction hx_target=formTarget hx_swap="outerHTML" class="mt-8 grid grid-cols-1 gap-5 sm:grid-cols-2" %} + {% for field in fields %} +
+ {% if field.label %}{% endif %} + {% if field.type == "textarea" %} + + {% elif field.type == "select" %} + + {% else %} + + {% endif %} +
+ {% endfor %} + +
+ +
+ {% endform %} + {% endwith %} + {% endif %} +
+
+{% endwith %} diff --git a/templates/overrides/gotham/countdown.ninjatpl b/templates/overrides/gotham/countdown.ninjatpl new file mode 100644 index 0000000..ca9a26c --- /dev/null +++ b/templates/overrides/gotham/countdown.ninjatpl @@ -0,0 +1,48 @@ +
+
+ {% if heading %}

{{ heading }}

{% endif %} + {% if intro %}

{{ intro }}

{% endif %} +
+
+
--{{ labelDays|default:"Days" }}
+
--{{ labelHours|default:"Hours" }}
+
--{{ labelMinutes|default:"Minutes" }}
+
--{{ labelSeconds|default:"Seconds" }}
+
+ +
+ +
+
+ diff --git a/templates/overrides/gotham/cta.ninjatpl b/templates/overrides/gotham/cta.ninjatpl new file mode 100644 index 0000000..1643bbc --- /dev/null +++ b/templates/overrides/gotham/cta.ninjatpl @@ -0,0 +1,14 @@ +
+
+
+
+ {% if heading %}

{{ heading }}

{% endif %} + {% if text %}

{{ text }}

{% endif %} +
+
+ {% if primaryUrl and primaryLabel %}{{ primaryLabel }}{% endif %} + {% if secondaryUrl and secondaryLabel %}{{ secondaryLabel }}{% endif %} +
+
+
+
diff --git a/templates/overrides/gotham/divider.ninjatpl b/templates/overrides/gotham/divider.ninjatpl new file mode 100644 index 0000000..7a1f029 --- /dev/null +++ b/templates/overrides/gotham/divider.ninjatpl @@ -0,0 +1,13 @@ +{# divider override — folds in the old divider_fan: gold geometric rules. Fields mirror builtin: variant (line|ornament|spacer-rule), weight, width, icon. ornament renders a sunburst fan crest; spacer-rule a short centred gold rule; line a hairline gold rule. #} +{% with variant=variant|default:"line" weight=weight|default:"thin" width=width|default:"full" %} +{% if variant == "ornament" %} + +{% elif variant == "spacer-rule" %} + +{% else %} + +{% endif %} +{% endwith %} diff --git a/templates/overrides/gotham/event-list.ninjatpl b/templates/overrides/gotham/event-list.ninjatpl new file mode 100644 index 0000000..d87941c --- /dev/null +++ b/templates/overrides/gotham/event-list.ninjatpl @@ -0,0 +1,40 @@ +
+
+ {% if heading %}

{{ heading }}

{% endif %} + {% if intro %}

{{ intro }}

{% endif %} + {% if layout == "cards" %} +
+ {% for event in events %}{% if not (hidePast and event.past) %} +
+ {% if event.media %}
{% img event.media alt=event.title class="h-full w-full object-cover" %}
{% endif %} +
+
{{ event.start }}{% if event.end %} – {{ event.end }}{% endif %}{% if event.timezone %} {{ event.timezone }}{% endif %}
+

{{ event.title }}

+ {% if event.venue %}

{{ event.venue }}

{% endif %} + {% if event.description %}

{{ event.description }}

{% endif %} + {% if event.link %}{{ event.linkLabel|default:"Details" }}{% endif %} +
+
+ {% endif %}{% endfor %} +
+ {% else %} +
    + {% for event in events %}{% if not (hidePast and event.past) %} +
  • +
    +
    {{ event.start }}
    + {% if event.end %}
    to {{ event.end }}
    {% endif %} + {% if event.timezone %}
    {{ event.timezone }}
    {% endif %} +
    +
    +

    {{ event.title }}

    + {% if event.venue %}

    {{ event.venue }}

    {% endif %} + {% if event.description %}

    {{ event.description }}

    {% endif %} +
    + {% if event.link %}{{ event.linkLabel|default:"Details" }}{% endif %} +
  • + {% endif %}{% endfor %} +
+ {% endif %} +
+
diff --git a/templates/overrides/gotham/faq.ninjatpl b/templates/overrides/gotham/faq.ninjatpl new file mode 100644 index 0000000..1ce6337 --- /dev/null +++ b/templates/overrides/gotham/faq.ninjatpl @@ -0,0 +1,17 @@ +
+
+ {% if heading %}

{{ heading }}

{% endif %} + {% if intro %}

{{ intro }}

{% endif %} +
+ {% for item in items %} +
+ + {{ item.question }} + + +
{{ item.answer|safe }}
+
+ {% endfor %} +
+
+
diff --git a/templates/overrides/gotham/feature-grid.ninjatpl b/templates/overrides/gotham/feature-grid.ninjatpl new file mode 100644 index 0000000..44da4b1 --- /dev/null +++ b/templates/overrides/gotham/feature-grid.ninjatpl @@ -0,0 +1,17 @@ +
+
+ {% if eyebrow %}

{{ eyebrow }}

{% endif %} + {% if heading %}

{{ heading }}

{% endif %} + {% if intro %}

{{ intro }}

{% endif %} +
+ {% for item in items %} +
+ {% if item.icon %}
{% endif %} +

{% if item.linkUrl %}{{ item.title }}{% else %}{{ item.title }}{% endif %}

+ {% if item.text %}

{{ item.text }}

{% endif %} + {% if item.linkUrl and item.linkLabel %}{{ item.linkLabel }}{% endif %} +
+ {% endfor %} +
+
+
diff --git a/templates/overrides/gotham/featured-posts.ninjatpl b/templates/overrides/gotham/featured-posts.ninjatpl new file mode 100644 index 0000000..6e532f9 --- /dev/null +++ b/templates/overrides/gotham/featured-posts.ninjatpl @@ -0,0 +1,24 @@ +{# featured-posts (gotham) — grid of cards from the `posts` provider #} +{# (params: limit, featured=true). Card: image, title, excerpt, meta. #} +
+
+{% if heading %}

{{ heading }}

{% endif %} +
+{% for post in posts %} +
+{% if showFeaturedImage and post.featured_image_url %}{% img post.featured_image_url alt=post.title class="h-full w-full object-cover transition-transform duration-500 group-hover:scale-105" %}{% endif %} +
+

{{ post.title }}

+ +{% if showExcerpt and post.excerpt %}

{{ post.excerpt }}

{% endif %} +
+{% if showAuthor and post.author_name %}{{ post.author_name }}{% endif %} +{% if showDate and post.published_at %}{{ post.published_at|date:"M j, Y" }}{% endif %} +{% if post.reading_time %}{{ post.reading_time }} min read{% endif %} +
+
+
+{% endfor %} +
+
+
diff --git a/templates/overrides/gotham/footer.ninjatpl b/templates/overrides/gotham/footer.ninjatpl new file mode 100644 index 0000000..774a65d --- /dev/null +++ b/templates/overrides/gotham/footer.ninjatpl @@ -0,0 +1,40 @@ +{# footer override — folds in the old footer block: centred gilded footer with gold rule, address, reservations, social. Structure/fields/signup_form preserved from builtin; reskinned to Art Deco. #} +{% set fl = layout %} +{% if not fl %}{% if template == "centered" %}{% set fl = "centered" %}{% else %}{% set fl = "columns" %}{% endif %}{% endif %} +{% set fbg = backgroundColor|default:"bg-foreground text-background" %} +{% macro sociallinks(cls) %}{% if social_items %}{% endif %}{% endmacro %} +{% macro newsletter() %}{% if showNewsletter %}

{{ newsletterTitle|default:"Join the guest list" }}

{% if newsletterDescription %}

{{ newsletterDescription }}

{% endif %}
{% signup_form list=newsletterListSlug|default:"main" source="footer" submit=newsletterButtonText|default:"Subscribe" %}
{% endif %}{% endmacro %} +{% macro legalbar() %}

{% if copyright %}© {{ copyright }}{% else %}© {{ companyName }}{% endif %}

{% if legal_items %}{% endif %}
{% endmacro %} +
+
+{% if fl == "minimal" %} +
+
{% if logo %}{{ companyName }}{% elif companyName %}{{ companyName }}{% endif %}{% if tagline %}{% endif %}
+{{ sociallinks("") }} +
+{{ legalbar() }} +{% elif fl == "centered" %} +
+{% if logo %}{{ companyName }}{% elif companyName %}{{ companyName }}{% endif %} + +{% if tagline %}

{{ tagline }}

{% endif %} +{% if columns %}{% endif %} +{{ newsletter() }} +{{ sociallinks("justify-center") }} +
+{{ legalbar() }} +{% else %} +
+
+{% if logo %}{{ companyName }}{% elif companyName %}{{ companyName }}{% endif %} +{% if tagline %}

{{ tagline }}

{% endif %} +{% if address or email or phone %}
{% if address %}
{{ address }}
{% endif %}{% if email %}{% endif %}{% if phone %}{% endif %}
{% endif %} +{{ sociallinks("mt-5") }} +
+{% for col in columns %}

{{ col.header }}

{% endfor %} +{% if showNewsletter %}
{{ newsletter() }}
{% endif %} +
+{{ legalbar() }} +{% endif %} +
+
diff --git a/templates/overrides/gotham/gallery.ninjatpl b/templates/overrides/gotham/gallery.ninjatpl new file mode 100644 index 0000000..b43c393 --- /dev/null +++ b/templates/overrides/gotham/gallery.ninjatpl @@ -0,0 +1,52 @@ +{# gallery override — folds in the old gallery_fan: symmetric gold-framed grid. Fields + lightbox JS mirror builtin verbatim: layout, gap, columns, lightbox, images[].src/.alt/.caption. #} +{% with layout=layout|default:"grid" gap=gap|default:"md" cols=columns|default:3 %}{% if lightbox %}{% endif %}{% endwith %} diff --git a/templates/overrides/gotham/heading.ninjatpl b/templates/overrides/gotham/heading.ninjatpl index 295e213..3a66ff2 100644 --- a/templates/overrides/gotham/heading.ninjatpl +++ b/templates/overrides/gotham/heading.ninjatpl @@ -1 +1,7 @@ -{% if level|integer == 1 %}

{{ text }}

{% elif level|integer == 3 %}

{{ text }}

{% elif level|integer == 4 %}

{{ text }}

{% elif level|integer == 5 %}
{{ text }}
{% elif level|integer == 6 %}
{{ text }}
{% else %}

{{ text }}

{% endif %} \ No newline at end of file +{# heading override — gilded Antonio display caps with a hairline gold underline. Fields: text, level, textClass (mirrors builtin). #} +{% if level == 1 %}

{{ text }}

+{% elif level == 3 %}

{{ text }}

+{% elif level == 4 %}

{{ text }}

+{% elif level == 5 %}
{{ text }}
+{% elif level == 6 %}
{{ text }}
+{% else %}

{{ text }}

{% endif %} diff --git a/templates/overrides/gotham/hero.ninjatpl b/templates/overrides/gotham/hero.ninjatpl new file mode 100644 index 0000000..00b5b96 --- /dev/null +++ b/templates/overrides/gotham/hero.ninjatpl @@ -0,0 +1,42 @@ +{# hero override — folds in the old marquee_hero: sunburst overlay + stepped ziggurat framing, gold-foil Antonio headline. Structure/fields/{% img %} calls preserved from builtin. Styled-text fields accept {text,color} or a bare string. #} +{% set eyebrowText = eyebrow.text|default:eyebrow %} +{% set headlineText = headline.text|default:headline %} +{% set subText = subheadline.text|default:subheadline %} +{% set descText = description.text|default:description %} +{% set pText = ctaPrimary.text %} +{% set pUrl = ctaPrimary.url %} +{% set sText = ctaSecondary.text %} +{% set sUrl = ctaSecondary.url %} +{% set variant = template|default:"centered" %} +{% set hasImage = backgroundImage %} +{% set showOverlay = hasImage and overlayColor != "none" and overlayColor != "" %} +{% macro herocontent(align) %} +{% if eyebrowText %}
{{ eyebrowText }}
{% endif %} +{% if headlineText %}

{{ headlineText }}

{% endif %} +{% if subText %}

{{ subText }}

{% endif %} +{% if descText %}

{{ descText }}

{% endif %} +{% if pText or sText %}
+{% if pText and pUrl %}{{ pText }}{% endif %} +{% if sText and sUrl %}{{ sText }}{% endif %} +
{% endif %} +{% if trustLogos %}
+

Acclaim

+
{% for logo in trustLogos %}{% if logo.url %}{% img logo.image alt=logo.alt class="h-8 w-auto" %}{% else %}{% img logo.image alt=logo.alt class="h-8 w-auto opacity-60" %}{% endif %}{% endfor %}
+
{% endif %} +{% endmacro %} +{% if variant == "split" %} +
+
{% if hasImage %}{% img backgroundImage alt=headlineText class="absolute inset-0 h-full w-full object-cover" layout="hero" %}{% endif %}
+
{{ herocontent("left") }}
+
+{% else %} +{% set align = "center" %} +{% if variant == "left-aligned" %}{% set align = "left" %}{% endif %} +
+{% if hasImage %}
{% img backgroundImage alt=headlineText class="h-full w-full object-cover" layout="hero" %}{% if showOverlay %}
{% endif %}
{% endif %} + + + +
{{ herocontent(align) }}
+
+{% endif %} diff --git a/templates/overrides/gotham/hours-location.ninjatpl b/templates/overrides/gotham/hours-location.ninjatpl new file mode 100644 index 0000000..0e81600 --- /dev/null +++ b/templates/overrides/gotham/hours-location.ninjatpl @@ -0,0 +1,31 @@ +{# hours-location override — gilded hours ledger + framed map. Map facade + + {% endif %} + + + diff --git a/templates/overrides/gotham/image.ninjatpl b/templates/overrides/gotham/image.ninjatpl new file mode 100644 index 0000000..ff3f827 --- /dev/null +++ b/templates/overrides/gotham/image.ninjatpl @@ -0,0 +1,11 @@ +{# image override — stepped gold Deco frame. Fields mirror builtin: src, alt, caption, size, align, aspectRatio, objectFit. Media resolved via {% img %} (media filter is not registered in the block render path). #} +{% with size=size|default:"full" align=align|default:"center" objectFit=objectFit|default:"cover" %} +
+
+
+ {% if objectFit == "contain" %}{% img src alt=alt class="w-full h-full object-contain" layout=size %}{% elif objectFit == "fill" %}{% img src alt=alt class="w-full h-full object-fill" layout=size %}{% elif objectFit == "none" %}{% img src alt=alt class="w-full h-full object-none" layout=size %}{% else %}{% img src alt=alt class="w-full h-full object-cover" layout=size %}{% endif %} +
+
+ {% if caption %}
{{ caption }}
{% endif %} +
+{% endwith %} diff --git a/templates/overrides/gotham/logo-strip.ninjatpl b/templates/overrides/gotham/logo-strip.ninjatpl new file mode 100644 index 0000000..1b5f721 --- /dev/null +++ b/templates/overrides/gotham/logo-strip.ninjatpl @@ -0,0 +1,15 @@ +
+
+ {% if heading %}

{{ heading }}

{% endif %} +
+
+ {% for logo in logos %} + {% if logo.url %}{% endif %} + {% img logo.image alt=logo.alt class="h-8 w-auto object-contain" %} + {% if logo.url %}{% endif %} + {% endfor %} +
+
+
+
+{% if marquee %}{% endif %} diff --git a/templates/overrides/gotham/menu-list.ninjatpl b/templates/overrides/gotham/menu-list.ninjatpl new file mode 100644 index 0000000..7add3ab --- /dev/null +++ b/templates/overrides/gotham/menu-list.ninjatpl @@ -0,0 +1,30 @@ +{# menu-list override — the supper-club menu card: centred Antonio section titles, gold leader rules, symmetric columns. Fields mirror builtin: heading, intro, columns, sections[].title/.note/.items[].name/.badges/.description/.price, currency, footnote. #} +
+
+ {% if heading %}

{{ heading }}

{% endif %} + {% if intro %}

{{ intro }}

{% endif %} + +
+ {% for section in sections %} + + {% endfor %} +
+ {% if footnote %}

{{ footnote }}

{% endif %} +
+
diff --git a/templates/overrides/gotham/navbar.ninjatpl b/templates/overrides/gotham/navbar.ninjatpl new file mode 100644 index 0000000..ae7c133 --- /dev/null +++ b/templates/overrides/gotham/navbar.ninjatpl @@ -0,0 +1,104 @@ +{# navbar override — gilded masthead. Structure, fixed drawer ids, focus-trap JS and all data-* preserved verbatim from the builtin; presentation reskinned to Art Deco. Fields identical: variant/stickyBehavior/megaMenu/logoType/logoText/logo/companyName/cta/menu.items/... #} +{% set nv = variant %} +{% if not nv %}{% if template == "centered" %}{% set nv = "centered-logo" %}{% elif template == "transparent" %}{% set nv = "transparent-over-hero" %}{% else %}{% set nv = "standard" %}{% endif %}{% endif %} +{% set sb = stickyBehavior %} +{% if not sb %}{% if sticky %}{% set sb = "sticky" %}{% else %}{% set sb = "none" %}{% endif %}{% endif %} +{% set use_mega = megaMenu or template == "mega" %} +{% set is_transparent = nv == "transparent-over-hero" %} +{% set cta_text = cta.text|default:ctaLabel %} +{% set cta_url = cta.url|default:ctaUrl %} +{% set bg = backgroundColor|default:"bg-background" %} +{% macro navlink(item) %}{{ item.label }}{% endmacro %} +{% macro dropdown(item) %}
+ +{% if use_mega %} +{% else %}{% endif %} +
{% endmacro %} +{% macro brand(size) %}{% if logoType == "text" and logoText.text %}{{ logoText.text }}{% elif logo %}{{ alt|default:companyName }}{% elif companyName %}{{ companyName }}{% endif %}{% endmacro %} +{% macro ctabtn(extra) %}{% if cta_text %}{{ cta_text }}{% endif %}{% endmacro %} + + + diff --git a/templates/overrides/gotham/newsletter-signup.ninjatpl b/templates/overrides/gotham/newsletter-signup.ninjatpl new file mode 100644 index 0000000..c34a2d0 --- /dev/null +++ b/templates/overrides/gotham/newsletter-signup.ninjatpl @@ -0,0 +1,13 @@ +{# newsletter-signup (gotham) — the {% signup_form %} tag carries the #} +{# untouchable subscribe wiring (/api/lists/subscribe HTMX post + honeypot); #} +{# this template supplies only the gotham chrome around it. #} +
+
+
+
+{% if title %}

{{ title }}

{% endif %} +{% if description %}

{{ description }}

{% endif %} +
{% signup_form list=listSlug source=source submit=submitText success_message=successMessage placeholder=placeholder %}
+
+
+
diff --git a/templates/overrides/gotham/page-suggestions.ninjatpl b/templates/overrides/gotham/page-suggestions.ninjatpl new file mode 100644 index 0000000..d3f7811 --- /dev/null +++ b/templates/overrides/gotham/page-suggestions.ninjatpl @@ -0,0 +1,21 @@ +{# page-suggestions override — themed 404 suggestions. Fields: title, showDescription, emptyMessage; suggestions[] from the provider (.slug/.title/.excerpt). #} +{% if suggestions %} +
+ {% if title %}

{{ title }}

{% endif %} +
    + {% for suggestion in suggestions %} +
  • + ::lucide:chevron-right:sm:: +
    + {{ suggestion.title }} + {% if showDescription and suggestion.excerpt %}

    {{ suggestion.excerpt }}

    {% endif %} +
    +
  • + {% endfor %} +
+
+{% elif emptyMessage %} +
+

{{ emptyMessage }}

+
+{% endif %} diff --git a/templates/overrides/gotham/password-reset-form.ninjatpl b/templates/overrides/gotham/password-reset-form.ninjatpl new file mode 100644 index 0000000..8b038bb --- /dev/null +++ b/templates/overrides/gotham/password-reset-form.ninjatpl @@ -0,0 +1,13 @@ +{# password-reset-form override — request stage only, matching builtin. Wiring UNTOUCHABLE: /api/auth/request-password-reset (email), hx-target #reset-message. Reskinned to Art Deco. #} +
+
+
+

Reset password

+

Enter your email and we will send a link to reset your password.

+
+
+ +
+

Back to sign in

+
+
diff --git a/templates/overrides/gotham/popular-posts.ninjatpl b/templates/overrides/gotham/popular-posts.ninjatpl new file mode 100644 index 0000000..cc7085c --- /dev/null +++ b/templates/overrides/gotham/popular-posts.ninjatpl @@ -0,0 +1,16 @@ +{# popular-posts (gotham) — compact ranked list from the `posts` provider. #} +
+{% if heading %}

{{ heading }}

{% endif %} +
    +{% for post in posts %} +
  1. +{% if showRank %}{{ forloop.Counter }}{% endif %} +{% if showThumbnail and post.featured_image_url %}{% img post.featured_image_url alt=post.title class="h-full w-full object-cover" %}{% endif %} +
    +

    {{ post.title }}

    +{% if post.published_at %}

    {{ post.published_at|date:"M j, Y" }}

    {% endif %} +
    +
  2. +{% endfor %} +
+
diff --git a/templates/overrides/gotham/post-hero.ninjatpl b/templates/overrides/gotham/post-hero.ninjatpl new file mode 100644 index 0000000..b2293ff --- /dev/null +++ b/templates/overrides/gotham/post-hero.ninjatpl @@ -0,0 +1,23 @@ +{# post-hero (gotham) — current post from the `post` provider. When the post #} +{# has a featured image it becomes an overlaid banner; otherwise a clean text hero. #} +{% set center = align != "left" %} +{% if post.featured_image_url %} +
+
{% img post.featured_image_url alt=post.featured_image_alt class="h-full w-full object-cover" layout="hero" %}
+
+{% if center %}
{% endif %} +

{{ post.title }}

+{% if showExcerpt and post.excerpt %}

{{ post.excerpt }}

{% endif %} +{% if showMeta %}
{% if post.author_name %}{{ post.author_name }}{% endif %}{% if post.published_at %}{{ post.published_at|date:"F j, Y" }}{% endif %}{% if post.reading_time %}{{ post.reading_time }} min read{% endif %}
{% endif %} +
+
+{% else %} +
+
+{% if center %}
{% endif %} +

{{ post.title }}

+{% if showExcerpt and post.excerpt %}

{{ post.excerpt }}

{% endif %} +{% if showMeta %}
{% if post.author_name %}{{ post.author_name }}{% endif %}{% if post.published_at %}{{ post.published_at|date:"F j, Y" }}{% endif %}{% if post.reading_time %}{{ post.reading_time }} min read{% endif %}
{% endif %} +
+
+{% endif %} diff --git a/templates/overrides/gotham/post-metadata.ninjatpl b/templates/overrides/gotham/post-metadata.ninjatpl new file mode 100644 index 0000000..00b0b1b --- /dev/null +++ b/templates/overrides/gotham/post-metadata.ninjatpl @@ -0,0 +1,9 @@ +{# post-metadata (gotham) — author/date/reading-time row from the `post` provider. #} +{% if post %} +
+{% if showAuthor and post.author_name %}{% if showAvatar and post.author_avatar %}{% img post.author_avatar alt=post.author_name class="h-7 w-7 rounded-full object-cover ring-1 ring-[hsl(var(--primary)/0.5)]" %}{% endif %}{{ post.author_name }}{% endif %} +{% if showDate and post.published_at %}{% endif %} +{% if showReadingTime and post.reading_time %}{{ post.reading_time }} min read{% endif %} +{% if post.categories %}{% for cat in post.categories %}{{ cat.name }}{% endfor %}{% endif %} +
+{% endif %} diff --git a/templates/overrides/gotham/pricing.ninjatpl b/templates/overrides/gotham/pricing.ninjatpl new file mode 100644 index 0000000..699ee87 --- /dev/null +++ b/templates/overrides/gotham/pricing.ninjatpl @@ -0,0 +1,25 @@ +
+
+ {% if heading %}

{{ heading }}

{% endif %} + {% if intro %}

{{ intro }}

{% endif %} +
+ {% for tier in tiers %} +
+ {% if tier.badge %}{{ tier.badge }}{% endif %} +

{{ tier.name }}

+
+

+ {% if currency %}{{ currency }}{% else %}${% endif %}{{ tier.price }} + {% if tier.period %}{{ tier.period }}{% endif %} +

+ {% if tier.description %}

{{ tier.description }}

{% endif %} + {% if tier.features %}
    + {% for feature in tier.features %}
  • {{ feature }}
  • {% endfor %} +
{% endif %} + {% if tier.ctaUrl and tier.ctaLabel %}{% if tier.highlighted %}{{ tier.ctaLabel }}{% else %}{{ tier.ctaLabel }}{% endif %}{% endif %} +
+ {% endfor %} +
+ {% if billingNote %}

{{ billingNote }}

{% endif %} +
+
diff --git a/templates/overrides/gotham/quote.ninjatpl b/templates/overrides/gotham/quote.ninjatpl new file mode 100644 index 0000000..8ee1dc6 --- /dev/null +++ b/templates/overrides/gotham/quote.ninjatpl @@ -0,0 +1,8 @@ +{# quote override — supper-club press pull-quote: large italic Cormorant flanked by gold sunburst crests. Fields mirror builtin: quote, style, align, cite, attribution, role. #} +{% with style=style|default:"block" align=align|default:"left" %} +
+ {% if align == "center" %}{% endif %} + {{ quote|safe }} + {% if attribution or role or cite %}
{% if attribution %}{{ attribution }}{% endif %}{% if role %}{{ role }}{% endif %}{% if cite %}Source{% endif %}
{% endif %} +
+{% endwith %} diff --git a/templates/overrides/gotham/related-posts.ninjatpl b/templates/overrides/gotham/related-posts.ninjatpl new file mode 100644 index 0000000..383ed4d --- /dev/null +++ b/templates/overrides/gotham/related-posts.ninjatpl @@ -0,0 +1,17 @@ +{# related-posts (gotham) — grid from the `posts` provider. #} +{% if posts %} +
+
+

{{ heading|default:"Related posts" }}

+
+{% for post in posts %} + +{% endfor %} +
+
+
+{% endif %} diff --git a/templates/overrides/gotham/rich-section.ninjatpl b/templates/overrides/gotham/rich-section.ninjatpl new file mode 100644 index 0000000..f39be39 --- /dev/null +++ b/templates/overrides/gotham/rich-section.ninjatpl @@ -0,0 +1,13 @@ +
+
+
+ {% if eyebrow %}

{{ eyebrow }}

{% endif %} + {% if heading %}

{{ heading }}

{% endif %} + {% if body %}
{{ body|safe }}
{% endif %} + {% if ctaUrl and ctaLabel %}{{ ctaLabel }}{% endif %} +
+
+ {% if media %}
{% img media alt=mediaAlt class="w-full h-auto object-cover" %}
{% endif %} +
+
+
diff --git a/templates/overrides/gotham/rich-text.ninjatpl b/templates/overrides/gotham/rich-text.ninjatpl new file mode 100644 index 0000000..2a9ba04 --- /dev/null +++ b/templates/overrides/gotham/rich-text.ninjatpl @@ -0,0 +1,2 @@ +{# rich-text override — long-form Cormorant editorial column with gilded links. Field: html (mirrors builtin). #} +{% if html %}
{{ html|safe }}
{% endif %} diff --git a/templates/overrides/gotham/sidebar-nav.ninjatpl b/templates/overrides/gotham/sidebar-nav.ninjatpl new file mode 100644 index 0000000..ac3e00b --- /dev/null +++ b/templates/overrides/gotham/sidebar-nav.ninjatpl @@ -0,0 +1,15 @@ +{# sidebar-nav (gotham) — vertical menu from the `menus` provider. Variants #} +{# default | compact. highlight-current carried as a progressive-enhancement #} +{# script keyed on data-bn-sidebar-link (marks the anchor matching location.pathname). #} +{% set compact = template == "compact" %} + +{% if highlightCurrent %}{% endif %} diff --git a/templates/overrides/gotham/social-links.ninjatpl b/templates/overrides/gotham/social-links.ninjatpl new file mode 100644 index 0000000..4991148 --- /dev/null +++ b/templates/overrides/gotham/social-links.ninjatpl @@ -0,0 +1,13 @@ + diff --git a/templates/overrides/gotham/stats.ninjatpl b/templates/overrides/gotham/stats.ninjatpl new file mode 100644 index 0000000..10624d4 --- /dev/null +++ b/templates/overrides/gotham/stats.ninjatpl @@ -0,0 +1,48 @@ +
+
+ {% if heading %}

{{ heading }}

{% endif %} + {% if intro %}

{{ intro }}

{% endif %} +
+ {% for item in items %} +
+
{% if item.prefix %}{{ item.prefix }}{% endif %}{{ item.value }}{% if item.suffix %}{{ item.suffix }}{% endif %}
+ {% if item.label %}
{{ item.label }}
{% endif %} +
+ {% endfor %} +
+
+
+{% if countUp %}{% endif %} diff --git a/templates/overrides/gotham/team.ninjatpl b/templates/overrides/gotham/team.ninjatpl new file mode 100644 index 0000000..1b21b08 --- /dev/null +++ b/templates/overrides/gotham/team.ninjatpl @@ -0,0 +1,21 @@ +
+
+ {% if heading %}

{{ heading }}

{% endif %} + {% if intro %}

{{ intro }}

{% endif %} +
+ {% for member in members %} +
+ {% if member.photo %}{% img member.photo alt=member.name class="h-full w-full object-cover" %}{% endif %} +
+ {% if member.name %}

{{ member.name }}

{% endif %} + {% if member.role %}

{{ member.role }}

{% endif %} + {% if member.bio %}

{{ member.bio }}

{% endif %} + {% if member.socials %}
+ {% for social in member.socials %}{% if social.url %}{% endif %}{% endfor %} +
{% endif %} +
+
+ {% endfor %} +
+
+
diff --git a/templates/overrides/gotham/testimonial.ninjatpl b/templates/overrides/gotham/testimonial.ninjatpl new file mode 100644 index 0000000..83eb2a5 --- /dev/null +++ b/templates/overrides/gotham/testimonial.ninjatpl @@ -0,0 +1,27 @@ +
+
+ {% if heading %}

{{ heading }}

{% endif %} +
+ {% for q in quotes %} +
+ {% if q.rating %}
+ + + + + +
{% endif %} +
{% if q.quote %}“{{ q.quote }}”{% endif %}
+
+
+ {% if q.avatar %}{% img q.avatar alt=q.name class="h-full w-full object-cover" %}{% endif %} + + {% if q.name %}{{ q.name }}{% endif %} + {% if q.role %}{{ q.role }}{% endif %} + +
+
+ {% endfor %} +
+
+
diff --git a/templates/overrides/gotham/text.ninjatpl b/templates/overrides/gotham/text.ninjatpl index efa6fb3..e854e8f 100644 --- a/templates/overrides/gotham/text.ninjatpl +++ b/templates/overrides/gotham/text.ninjatpl @@ -1 +1,2 @@ -
{{ text|safe }}
\ No newline at end of file +{# text override — Cormorant body prose with gilded links. Fields: text, proseClass (mirrors builtin). Dropcap is reserved for the article template, not forced on every text block. #} +
{{ text|safe }}
diff --git a/templates/overrides/gotham/timeline.ninjatpl b/templates/overrides/gotham/timeline.ninjatpl new file mode 100644 index 0000000..47ac53f --- /dev/null +++ b/templates/overrides/gotham/timeline.ninjatpl @@ -0,0 +1,21 @@ +
+
+ {% if heading %}

{{ heading }}

{% endif %} + {% if intro %}

{{ intro }}

{% endif %} +
    + {% for step in steps %} +
  1. + + {% if marker == "numbered" %}{{ forloop.counter }}{% elif marker == "dot" %}{% else %}{% endif %} + +
    + {% if step.label %}

    {{ step.label }}

    {% endif %} + {% if step.title %}

    {{ step.title }}

    {% endif %} + {% if step.text %}

    {{ step.text }}

    {% endif %} + {% if step.media %}
    {% img step.media alt=step.title class="w-full h-auto object-cover" %}
    {% endif %} +
    +
  2. + {% endfor %} +
+
+
diff --git a/templates/overrides/gotham/utility-bar.ninjatpl b/templates/overrides/gotham/utility-bar.ninjatpl new file mode 100644 index 0000000..bf3d711 --- /dev/null +++ b/templates/overrides/gotham/utility-bar.ninjatpl @@ -0,0 +1,10 @@ +{# utility-bar override — thin lacquer contact strip, gold text. Fields mirror builtin: variant, showOnMobile, leftItems/rightItems {icon,label,link}. #} +{% set ubcls = "bg-foreground text-background" %} +{% if variant == "primary" %}{% set ubcls = "bg-primary text-primary-foreground" %}{% elif variant == "dark" %}{% set ubcls = "bg-foreground text-background" %}{% endif %} +{% macro ubitem(it) %}{% if it.link %}{% if it.icon %}::{{ it.icon }}::{% endif %}{% if it.label %}{{ it.label }}{% endif %}{% else %}{% if it.icon %}::{{ it.icon }}::{% endif %}{% if it.label %}{{ it.label }}{% endif %}{% endif %}{% endmacro %} +
+
+
{% for it in leftItems %}{{ ubitem(it) }}{% endfor %}
+
{% for it in rightItems %}{{ ubitem(it) }}{% endfor %}
+
+
diff --git a/templates/overrides/gotham/video-embed.ninjatpl b/templates/overrides/gotham/video-embed.ninjatpl new file mode 100644 index 0000000..3374fcc --- /dev/null +++ b/templates/overrides/gotham/video-embed.ninjatpl @@ -0,0 +1,23 @@ +{# video-embed override — gold-framed facade; play button in a gold-ringed medallion. Fields + facade JS mirror builtin verbatim: aspect, url, media, poster, title, caption. #} +{% with aspect=aspect|default:"16:9" %}
{% if caption %}
{{ caption }}
{% endif %}
{% endwith %}