Skip to content

feat(brand+website): brand redesign v2 + website v2 — v1.0.2#51

Merged
SamPlvs merged 3 commits into
mainfrom
claude/brand-redesign-v2
Apr 25, 2026
Merged

feat(brand+website): brand redesign v2 + website v2 — v1.0.2#51
SamPlvs merged 3 commits into
mainfrom
claude/brand-redesign-v2

Conversation

@SamPlvs
Copy link
Copy Markdown
Owner

@SamPlvs SamPlvs commented Apr 25, 2026

Summary

  • Brand v2: new palette (canvas / paper / coral / dusk / moss — oklch-based), new typography (Geist + Cormorant Garamond + JetBrains Mono), new mark (simplified C — replaces the orbital).
  • Website v2: rewritten as single-page Astro 5 static. Mobile-tested. Light/dark theme toggle (localStorage-persisted, respects prefers-color-scheme). Same Cloudflare-deployable shape as before.
  • Version bump: 1.0.1 → 1.0.2 (autonomous loop + brand v2 = coherent forward step).

What changed

design/ — wiped and replaced:

  • Removed: 8 old brand-system HTML variants + banner-dark.svg + logo-light.svg.
  • Added: brand-system.html (dark) + brand-system-light.html + logos.html + font-pairings.html + shared styles.css + logos.js + readme-banner.{svg,png} + logo-dark.svg (extracted from new mark, used in README inline refs).

website/ — rebuilt:

  • Removed: 12 .astro components + 4 JSON data files + 2 scripts + Base.astro + old index.astro + global.css + PLAN.md + obsolete package-lock.json.
  • Added: src/pages/index.html (Astro passes static HTML through verbatim) + public/{styles.css, app.js, favicon.svg, robots.txt, assets/hero-workshop.png, sitemap.xml}.
  • Mobile media queries at 1024 / 900 / 640 / 400px + @media (hover: none) and (pointer: coarse).

Cascade docs (per CLAUDE.md PR-003 / PR-005):

  • README.md — banner uses new design/readme-banner.png; footer mark uses new design/logo-dark.svg; badges recolored to coral on canvas; test count refreshed (524 → 669); footer version v1.0.1 → v1.0.2.
  • CLAUDE.md — "Design System" section rewritten end-to-end.
  • .claude/agents/frontend-engineer.md + .claude/agents/documentation-agent.md — design path refs (design/zero_operators_brand_system.htmldesign/brand-system.html) + palette/font refs updated.

Version cascade:

  • pyproject.toml 1.0.1 → 1.0.2
  • src/zo/__init__.py 1.0.1 → 1.0.2
  • src/zo/cli.py 1.0.1 → 1.0.2

Memory:

  • memory/zo-platform/STATE.md — current position updated to v1.0.2; session-021 entry added.
  • memory/zo-platform/DECISION_LOG.md — 2026-04-25T22:00:00Z DESIGN entry recording the redesign, alternatives, and outcome.

Cloudflare safety

The Cloudflare Pages dashboard is unchanged: build cmd cd website && npm install && npm run build, output website/dist, production branch main, automatic deployments enabled, watch *. The new site uses the same astro.config.mjs (static, _assets build dir) and same package.json (Astro ^5.0.0, astro build script), so the existing pipeline produces a clean dist/ on merge with no Cloudflare config changes needed.

Verified locally:

  • npm install → 376 packages.
  • npm run builddist/ with 7 files (index.html, styles.css, app.js, favicon.svg, robots.txt, sitemap.xml, assets/hero-workshop.png), ~260 ms build time.
  • Live preview: all 9 sections render (hero, idea, handoff, team, how, oracle, different, start, footer); both themes work; all asset 200 OKs; no console errors.

scripts/validate-docs.sh: 10 / 10 hard checks pass, 1 pre-existing test-count warning unrelated to this PR.

Test plan

  • Cloudflare Pages preview deployment renders the new hero, all 9 sections, and theme toggle.
  • Hero image (assets/hero-workshop.png) loads on the deployed preview.
  • Mobile view (≤640 px) collapses nav-right correctly and stacks hero copy + image.
  • Theme toggle persists across page reloads.
  • https://<preview>.pages.dev/sitemap.xml resolves with the home URL entry.
  • After merge to main, production deploy at zerooperators.com reflects the new brand.
  • README on GitHub renders the new banner PNG above the badges.

🤖 Generated with Claude Code

SamPlvs and others added 3 commits April 25, 2026 22:03
Visual identity refresh and public-facing site rewrite, mobile-tested.

Brand:
- New palette: canvas #12110F (dark) / paper #F4EFE6 (light) / coral oklch(0.74 0.14 35) accent / dusk + moss for status (replaces amber #F0C040 / void #080808).
- New typography: Geist (sans) + Cormorant Garamond (italic display) + JetBrains Mono (code) — replaces Share Tech Mono / Rajdhani.
- New mark: simplified C — circle + diagonal slash + centered coral dot — replaces the orbital.

design/ (wiped + replaced):
- Removed: 8 brand-system HTML variants + banner-dark.svg + logo-light.svg.
- Added: brand-system.html (dark) + brand-system-light.html + logos.html + font-pairings.html + shared styles.css + logos.js + readme-banner.{svg,png} + logo-dark.svg (extracted from new mark).

website/ (rebuilt as single-page Astro 5 static):
- Removed: 12 .astro components + 4 JSON data files + 2 scripts + Base.astro layout + index.astro + global.css + PLAN.md + obsolete package-lock.json.
- Added: src/pages/index.html (passes through verbatim) + public/{styles.css, app.js, favicon.svg, robots.txt, assets/hero-workshop.png}.
- Light/dark theme toggle, localStorage-persisted, prefers-color-scheme respected.
- Mobile media queries at 1024 / 900 / 640 / 400px + hover:none coverage.
- Cloudflare Pages compatible: same astro.config.mjs, same `npm run build → dist/`. Verified locally.

Cascade (per CLAUDE.md PR-003 / PR-005):
- README.md banner + footer logo refs swapped, badges recolored.
- CLAUDE.md "Design System" section rewritten end-to-end.
- frontend-engineer.md + documentation-agent.md design path + palette refs updated.

Version: 1.0.1 → 1.0.2 across pyproject.toml + __init__.py + cli.py.
validate-docs: 10/10 (1 pre-existing test-count warning).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…olves

robots.txt declares Sitemap: https://zerooperators.com/sitemap.xml but no
sitemap was shipping. Adds a static single-URL sitemap.xml in public/ — Astro
copies it verbatim to dist/sitemap.xml at build time. Resolves the dead
pointer for crawlers; trivial to extend if more routes are added.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…hosts

test_dry_run_rejected_in_conversational_mode invokes `zo init foo --dry-run`
and expects an error mentioning --dry-run + --no-tmux. But `zo init` checks
tmux availability before flag validation: on a no-tmux host, the earlier
guardrail fires and the test never reaches its target branch.

Patch shutil.which inside the test's context manager so the test exercises
the flag-validation path independent of host tooling. Documents the rule as
PR-032 in PRIORS.md (tests targeting downstream logic must mock upstream
environment guardrails — the inverse of PR-025).

669 tests pass on both no-tmux and tmux-present hosts.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@cloudflare-workers-and-pages
Copy link
Copy Markdown

cloudflare-workers-and-pages Bot commented Apr 25, 2026

Deploying zero-operators with  Cloudflare Pages  Cloudflare Pages

Latest commit: 5782696
Status: ✅  Deploy successful!
Preview URL: https://9f8ca0f9.zero-operators.pages.dev
Branch Preview URL: https://claude-brand-redesign-v2.zero-operators.pages.dev

View logs

@SamPlvs SamPlvs merged commit 9bc4c23 into main Apr 25, 2026
1 check passed
@SamPlvs SamPlvs deleted the claude/brand-redesign-v2 branch April 25, 2026 21:20
SamPlvs added a commit that referenced this pull request Apr 30, 2026
feat(brand+website): brand redesign v2 + website v2 — v1.0.2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant