diff --git a/dashboards/ob1-canonical-landing/404.html b/dashboards/ob1-canonical-landing/404.html new file mode 100644 index 00000000..3d605d34 --- /dev/null +++ b/dashboards/ob1-canonical-landing/404.html @@ -0,0 +1,68 @@ + + + + + + Page not found — Open Brain + + + + + + + + +
+ +
+
404
+

Page not found

+

This page doesn’t exist. The brain has no memory of it.

+ Return home → + + diff --git a/dashboards/ob1-canonical-landing/CNAME b/dashboards/ob1-canonical-landing/CNAME new file mode 100644 index 00000000..a72a42c8 --- /dev/null +++ b/dashboards/ob1-canonical-landing/CNAME @@ -0,0 +1 @@ +openbrain.fyi \ No newline at end of file diff --git a/dashboards/ob1-canonical-landing/MAINTENANCE.md b/dashboards/ob1-canonical-landing/MAINTENANCE.md new file mode 100644 index 00000000..231e98f6 --- /dev/null +++ b/dashboards/ob1-canonical-landing/MAINTENANCE.md @@ -0,0 +1,222 @@ +# Maintaining openbrain.fyi + +This guide is for the OB1 maintainer and any future contributors who need to update the canonical landing page after it goes live. The page is intentionally a single static `index.html` with no build step — every change is a normal git edit, and every deploy is a single push. + +## Edit-and-deploy loop + +1. Edit any file under `dashboards/ob1-canonical-landing/` +2. Open a PR (or push to `main` if you have direct write access) +3. The `Deploy landing page` workflow fires on the path filter and pushes the artifact to Pages +4. The `https://openbrain.fyi/` cache refreshes within 1–2 minutes of the deploy job finishing + +Watch progress at **Actions → Deploy landing page**. The job's environment URL links to the live site once it's published. + +## Common edits + +### Update copy, headlines, or links + +All visible text lives directly in `index.html`. The major sections are marked with HTML `id`s for navigation: + +| `id` | Section | +|------|---------| +| `main-content` | Skip-link target, wraps everything below the nav | +| (hero, no id) | The first `
` — h1, byline, CTA buttons, demo video | +| `how-it-works` | Three-pillar overview | +| `get-started` | Numbered steps + AI-assistant cards + companion prompts | +| `extensions` | Extensions table | +| `community` | Recipes + tools + skills tables, dashboards/integrations pillars | + +After any copy change, update `dateModified` in three places so search engines and citations stay in sync: + +| File | Field | +|------|-------| +| `index.html` | `` | +| `index.html` | JSON-LD `TechArticle` → `"dateModified"` | +| `index.html` | Byline `` | +| `sitemap.xml` | `` | +| `metadata.json` | `"updated"` | + +All five should be the same ISO date (`YYYY-MM-DD`). + +### Add or swap a video + +Videos use GitHub user-attachment URLs (the same URLs that render in the project README). To add a new video: + +1. Drag the `.mp4` into a GitHub issue or PR comment to upload it; copy the `https://github.com/user-attachments/assets/...` URL +2. Embed using the existing pattern: + +```html + +``` + +Always set a meaningful `aria-label` — screen readers announce it. Use `preload="metadata"` only for the hero video; keep all below-fold videos at `preload="none"` to protect first-paint performance. + +If a GitHub user-attachment URL ever goes 404, replace with a re-uploaded asset; do not host video binaries in the repo (gate rule blocks files >1MB). + +### Replace or update the logo + +The page ships three brand-image variants generated from a single source: + +| File | Use | Source | +|------|-----|--------| +| `imgs/ob1-logo.png` (512×512) | Nav + manifest icon | Square master | +| `imgs/ob1-logo-wide.png` (1200×360) | Hero banner | Wide master | +| `imgs/og.png` (1200×630) | Social share | Wide on `#0f1b33` background | +| `imgs/apple-touch-icon.png` (180×180) | iOS home screen | Square master | +| `imgs/favicon-32.png` (32×32) | Browser tab | Square master | + +To regenerate from new master images, drop the new sources at `imgs/_master-square.png` and `imgs/_master-wide.png`, then run: + +```bash +cd dashboards/ob1-canonical-landing/imgs +magick _master-square.png -resize 512x512 -strip ob1-logo.png +magick _master-square.png -resize 180x180 -strip apple-touch-icon.png +magick _master-square.png -resize 32x32 -strip favicon-32.png +magick _master-wide.png -resize 1200x -strip ob1-logo-wide.png +magick _master-wide.png -resize 1000x -background "#0f1b33" -gravity center -extent 1200x630 og.png +rm _master-square.png _master-wide.png +``` + +Requires ImageMagick 7+ (`brew install imagemagick`). The `-strip` flag removes EXIF/color-profile metadata that bloats files and leaks build-environment info. + +If the logo's color palette changes, update the four CSS custom properties in the `:root` block of `index.html`: + +```css +--accent: #e05a20; /* primary accent (OB1 orange) */ +--brand-blue-deep: #0f1b33; /* used in hero gradient + OG bg */ +--brand-blue-mid: #1a3a6e; +--brand-blue-bright: #2563b8; +``` + +### Add a new content section + +Use the existing pattern so styling, spacing, and a11y stay consistent: + +```html +
+
+

Section title

+

Lead paragraph.

+ +
+
+``` + +Alternate `
` and `
` for visual rhythm. Add a nav link in the sticky `