Skip to content

feat(website): Add v1 marketing site and bilingual docs portal#283

Open
darion-yaphet wants to merge 40 commits intotw93:mainfrom
darion-yaphet:web-ui
Open

feat(website): Add v1 marketing site and bilingual docs portal#283
darion-yaphet wants to merge 40 commits intotw93:mainfrom
darion-yaphet:web-ui

Conversation

@darion-yaphet
Copy link
Copy Markdown

@darion-yaphet darion-yaphet commented Apr 14, 2026

Here's the English translation:


What this PR does

Launches the official v1 website for Kaku Terminal — a Terminal Hacker–styled landing page plus a bilingual documentation site built on Starlight. Tech stack: Astro + Starlight, deployed to GitHub Pages.

What's included

Landing page (9 sections)

  1. Hero (headline + download CTA + one-click brew command copy + GitHub stars badge)
  2. Terminal Demo (pure CSS animation demonstrating the "auto error fix" flow)
  3. 6-feature grid (zero config / built-in AI / theme-aware / GPU rendering / Lua compatibility / integrated toolchain)
  4. AI Showcase (natural language → command demo)
  5. iTerm2 / WezTerm migration guide (dual tab toggle)
  6. Theme screenshot gallery (6 placeholder images)
  7. Quick Start (three-step code blocks)
  8. Why Kaku (author endorsements + Pake/Mole references)
  9. FAQ (6 entries + bottom CTA)

Secondary pages

  • /download — DMG / Homebrew / build-from-source installation methods
  • /roadmap — three-phase roadmap (Now / Next / Later, data-driven)
  • /changelog — static version history

Documentation site

  • /docs/ task-oriented entry point (5 LinkCards)
  • 5 existing markdown docs imported (cli / configuration / faq / features / keybindings)
  • 15 structured stub pages covering 5 categories: Quick Start / AI Features / Configuration / Feature Details / Reference
  • Pagefind local full-text search (bilingual Chinese/English index)
  • Complete Starlight sidebar

Bilingual i18n

  • Chinese as primary (no path prefix), English mirrored under /en/
  • Footer is also lang-aware (prevents English pages from rendering Chinese menus)
  • 46 static pages total

Global a11y hardening

  • Global :focus-visible keyboard focus ring
  • <nav> with aria-label="Primary"
  • Language switcher with hreflang + aria-label
  • Decorative icons marked aria-hidden="true"
  • All external links use target="_blank" rel="noopener noreferrer"
  • TerminalDemo's looping animation annotated with an aria-label summary

CI / Deployment

  • .github/workflows/deploy-website.yml — automatically builds and deploys to GitHub Pages on push to main or web-ui when changes touch website/**

Tests

  • 2 Playwright smoke tests — verifies all 9 sections render + migration tab toggle interaction

Visual direction

Terminal Hacker dark theme:

  • Background: #0a0a0a black
  • Accent: #00ff9f neon green
  • Body text: #ffffff pure white
  • Monospace font throughout: JetBrains Mono
  • Every section header decorated with a ~/kaku $ ...–style CLI prompt

Notable engineering decisions

  1. @astrojs/sitemap pinned to 3.2.1 (via pnpm.overrides) — versions 3.7+ invoke a hook that only exists in Astro 5, which crashes Astro 4 builds. This is documented in a comment at the top of astro.config.mjs; remember to remove the override when upgrading to Astro 5.
  2. Doc content lives under src/content/docs/docs/... (not Starlight's default src/content/docs/...) — because src/pages/index.astro occupies the /Kaku/ root route as the landing page, and Starlight's default behavior would mount content at the root as well, causing a conflict. The subdirectory approach cleanly places docs at /Kaku/docs/.
  3. v1 ships dark theme only; light theme is deferred to v2 per spec.
  4. /blog and /showcase are not implemented. /showcase may be added in v2 (open community screenshot submissions).

Validation status

✅ Passing:

  • pnpm build — 46 pages build cleanly
  • pnpm test:smoke — Playwright 2/2 pass
  • Content grep checks on key pages all pass
  • No broken /Kaku/ href links
  • Pagefind index built for both Chinese and English

4 items requiring manual confirmation before merge:

  1. Lighthouse mobile audit (target: Performance / Accessibility / Best Practices / SEO all ≥ 95)
  2. Browser walkthrough of 6 core pages (landing / download / roadmap / changelog / en / docs)
  3. Repo Settings → Pages: switch Source to "GitHub Actions" (one-time manual step required before first deployment)
  4. Replace placeholder screenshots — the 6 images currently under website/public/shots/ are all copies of assets/kaku.jpg

Documentation index

The full design spec and implementation plan are committed in this PR:

  • docs/superpowers/specs/2026-04-14-kaku-website-design.md — 12-section design document (IA / landing page 9 sections / docs area / color system / i18n / YAGNI cuts / risks, etc.)
  • docs/superpowers/plans/2026-04-14-kaku-website.md — 23-task phased implementation plan

Would you like me to replace the PR body with this summary? I can run gh pr edit web-ui --body to update it directly.

@tw93
Copy link
Copy Markdown
Owner

tw93 commented Apr 14, 2026

@darion-yaphet Welcome to submit the code you think is good directly.

@darion-yaphet darion-yaphet changed the title docs: add Kaku website design spec feat(website): Add v1 marketing site and bilingual docs portal Apr 14, 2026
@darion-yaphet darion-yaphet force-pushed the web-ui branch 2 times, most recently from e6c4137 to 88fb01d Compare April 15, 2026 06:15
Brainstormed design for Kaku's official website: landing page + docs site
built with Astro + Starlight, deployed to GitHub Pages. Terminal Hacker
visual tone, zh-CN primary with EN toggle. Covers IA, 9-section homepage,
docs structure, /roadmap, /changelog, and explicit out-of-scope items.
- Create SiteNav.astro with sticky nav, brand, lang switch (zh/en), and GitHub link
- Harden all external links in SiteFooter.astro with target="_blank" rel="noopener noreferrer" (6 links: GitHub, Issues, Twitter, WezTerm, License, 作者)
- Add <meta name="color-scheme" content="dark"> to LandingLayout.astro head
Create src/pages/index.astro composing Hero, TerminalDemo, FeatureGrid,
AIShowcase, MigrateTabs, ScreenshotGallery, QuickStart, WhyKaku, and FAQ
under LandingLayout. Astro page routing takes precedence over Starlight's
content collection, so the landing lands at / with no route conflict;
Starlight docs/index.mdx is untouched and remains for Task 4.1.
darion-yaphet and others added 14 commits April 15, 2026 17:58
Replace placeholder index.mdx with a Starlight splash page using
CardGrid + LinkCard components, offering six user-goal pathways.
Move src/content/docs/index.mdx to src/content/docs/docs/index.mdx so
Starlight routes the docs landing to /docs/ instead of conflicting with
/en/ due to the root locale + custom landing page at /.

Update all LinkCard and hero action hrefs to include the /Kaku/ base
path since Starlight does not auto-prepend the Astro base to user-
supplied href attributes in MDX content.
… /docs/

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…gnore)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@tw93
Copy link
Copy Markdown
Owner

tw93 commented Apr 17, 2026

@darion-yaphet thanks, I really want this! Could you start by adding real screenshots (feel free to check my Twitter @HiTw93 for inspiration on framing) and fleshing out the docs content? We'll tackle the rest together over the weekend.

@darion-yaphet
Copy link
Copy Markdown
Author

and fleshing out the docs content? We'll tackle the rest together over the weekend.

I have recently checked and fixed the issue of comparing the Chinese and English versions, but I feel that the content is still not detailed enough. Can I directly post the screenshot in the comments section on GitHub?

@darion-yaphet
Copy link
Copy Markdown
Author

The sample web page has been deployed at: https://darion-yaphet.github.io/Kaku/ You can preview it here @tw93

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.

2 participants