Alex Dunmow d919a967cf fix(lcars): remediate hero blank, empty-media balloon, CTA void, band padding
Layout/whitespace remediation (no redesign; LCARS persona intact):
- hero: styled-text reads used `field.text|default:field`, which HARD-ERRORS
  in ninjatpl when the field is a bare string (resolveIdentifier errors on
  reflect.String, and nodeFilteredVariable returns before the default filter
  runs). The demo seed passes bare strings for eyebrow/headline/subheadline,
  so the hero aborted on its first {% set %} and rendered nothing — a dead
  band on the home page. Switch to `field|get:"text"|default:field` (the
  global jutsu `get` filter tolerates non-maps), which resolves both the
  {text,color} object and bare-string forms. Same defensive fix in navbar
  logoText.
- hero split: guard the empty media frame so an image-less split hero drops to
  a single column instead of leaving a blank muted panel.
- episode_console: empty cover rendered a full 1:1 square that ballooned to
  ~600px and, with align-items:stretch, stretched the text column to match,
  leaving a large void beside the copy. Switch to align-items:start and render
  a compact, capped, on-brand LCARS readout placeholder (.lcars-console-art)
  when no cover ships.
- cta: band variant left a large empty region right of the button; use
  justify-content:space-between and trim the oversized 4rem band padding to 3rem.
- manifest css: add .lcars-console-art (explicit CSS, semantic tokens) + cap
  .lcars-img-empty height.

Mobile responsiveness audited from CSS/templates: all grids/rails collapse via
explicit @media rules in manifest css.input_css_append (not Tailwind JIT-scanned
theme classes); no horizontal overflow at 375-390px. Content is never gated by
IntersectionObserver (canvas IO drives only the decorative hero background;
.lcars-reveal is a load-time CSS animation with a reduced-motion opacity:1
fallback), so no reveal-hidden dead bands.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-05 17:26:12 +08:00
2026-07-05 16:51:02 +08:00
2026-07-05 13:43:43 +08:00

LCARS

A retro-futurist theme built as a full library-computer interface. Angular pill rails, numeric readouts, and stardate furniture frame every surface, so the chrome itself becomes the layout. It reads like the console of a 24th-century starship. Amber and lilac panels sit over true black in dark mode.

Good for

We built LCARS for sci-fi media and fandom. Treat these as starting points, not limits. If the mood fits your brand, use it:

  • Sci-fi podcasts and audio shows
  • Fan sites and episode archives
  • Tech and gaming communities
  • Convention and event pages

What you get

  • Five color presets, each with a tuned light mode and a tuned dark mode: Ops Amber, Red Alert, Blue Console, Nebula, and Medbay Green.
  • Two bundled fonts, ready to assign: Antonio for condensed panel headings and Share Tech Mono for readouts and labels. Fonts stay admin-controlled, so you can swap them from the typography settings.
  • A GO BIG hero with an animated canvas panel-sweep. It honors reduced-motion settings and draws a single static frame when scripts are off.
  • Four persona blocks: an episode console, a crew roster, a stardate log, and a transmission-status readout.
  • A demo site that installs when you activate the theme: a home page, an about page, an episode feed with three articles, and a contact page whose form emails your admins.
  • Every core block restyled to match, plus a themed login screen and a themed 404 page.

Install

Install from the BlockNinja registry, then pick a preset and assign your fonts in the admin. Activate the demo content if you want a fully dressed starting point.

Description
No description provided
Readme 11 MiB
Languages
CSS 74.7%
Makefile 21.5%
AMPL 3.8%