feat: Windows tray parity + god-rays site redesign (v0.4.35)#181
Merged
Conversation
- Add a subtle WebGL god-rays background (inlined GLSL; no Three.js / no shader dependency). Dark mode only; light mode keeps the warm-paper background. Brand jewel tones (turquoise -> indigo -> magenta), light source positioned behind the hero wordmark, prefers-reduced-motion renders a single frame, paused on hidden tab, DPR-capped. - Hero is now a solid brand-red card (drops the per-section top accent rule), cream ink. - Hero download button detects the OS: Windows -> inert "coming soon" chip; macOS/other -> the macOS download (server-rendered default, no-JS safe).
macOS copy (menu bar ↑) is unchanged; only the non-macOS branch gets "Maximal is running in your system tray ↓".
…ndows On Windows a running Claude Code session keeps routing through the proxy until restarted (it reads its base URL at launch); macOS picks the change up live. Show a modal (reusing ConfirmDialog) before disabling, Windows only, telling the user to /exit and relaunch. Closes #178.
…etection Two Windows-only bugs surfaced by hands-on testing (macOS unaffected): 1. getClaude3pDir wrote the 3P configLibrary to %APPDATA%\Claude-3p (Roaming), but Anthropic's docs locate it under %LOCALAPPDATA%\Claude-3p (Local) — so the config landed where Claude Desktop never reads it. On macOS both halves share ~/Library/Application Support; on Windows the consumer config (Roaming %APPDATA%\Claude) and the 3P dir (Local) diverge. 2. The settings Apps route detected Claude Desktop via getClaude3pDir() existence — circular, since that dir only exists after maximal writes it, so Claude read as not-installed until configured. Switch to the existing claudeAppInstalled() (probes %LOCALAPPDATA%\AnthropicClaude + the WindowsApps launcher shim; /Applications/Claude.app on macOS — same as before there). Refs the Claude Desktop 3P config path investigation (Anthropic admin-deploy docs: configLibrary under Local; managed config is registry HKLM/HKCU).
…eflection - Unify the primary button into one glossy clear-coat treatment shared by the hero and Get Started, with a chromed spark and a version-number meta - Generalize the WebGL paint into Paint.astro (candy / coat / clearcoat / chrome modes); apply it to the hero card, the secondary islands (translucent coat with depth), the primary buttons, and the chrome spark icon - Add a 1:1 cursor-shaped reflection on the secondary islands that follows the browser's actual cursor (arrow / hand / I-beam), fixed pixel size, reduced-motion safe - Simplify the Why-try-maximal lede (engine-swap), scrub em-dashes, Fraunces-bold inline 'maximal', unify island body-text color - Remove the in-scroll footer, Cursor mentions, and the hero 'Other ways to install' link; update the hero byline - Subtle click-celebration micro-interaction on primary buttons
New Windows installs are MSIX, not Squirrel — they don't create %LOCALAPPDATA%\AnthropicClaude or always drop the WindowsApps alias, so the Apps card showed 'Not installed' on a real install. Add the known MSIX package dir (Packages\Claude_pzs8sxrjxfjjc) as a candidate and scan the Packages dir for the Claude_/AnthropicPBC.Claude family prefix (hashed family names mean no fixed path catches every install). macOS and the unknown-platform 'can't tell → don't block' path are untouched.
On Windows/WebView2 the native surface is presented before the compositor draws its first frame, so the transparent splash showed an empty outline for hundreds of ms–seconds before the brand-red fill popped in. Build the splash hidden and .show() it from on_page_load once the DOM reports Finished. macOS/WKWebView paints in lockstep with show so this fires immediately there — no regression. Also broaden the macOS Reopen handler: clicking the 'Maximal is running' banner (or the Dock icon) with no visible windows now opens Settings — account section when signed out, plain Settings otherwise. Desktop notifications can't carry a routable click (plugin show() is fire-and-forget), so Reopen is the lever on macOS. On Windows the plugin (2.3.3) exposes no toast-activation callback; tray left-click already opens Settings and the toast body points there.
… feat/site-god-rays # Conflicts: # site/src/components/GodRays.astro # site/src/components/markdoc/Hero.astro
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Lands the full Windows tray-parity workstream and the god-rays site redesign together, as the basis for the v0.4.35 stable release. Everything here has been validated on
v0.4.35-beta.1/-beta.2(full release pipeline green, incl. Windows MSI install/uninstall/smoke-test) and hands-on Windows hardware.Supersedes #180 — all of its commits are contained here (verified by ancestry). Merging with a merge commit (not squash) so release-please sees each conventional commit and writes a complete changelog.
Windows app parity (was #180)
fix(shell): Windows startup notification — system-tray copy + down arrow (macOS menu-bar copy untouched)feat(shell): "Restart Claude Code" modal when disabling routing on Windows (reads base URL at launch; macOS picks it up live)fix(windows): Claude Desktop 3P config dir →%LOCALAPPDATA%\Claude-3p(Local, not Roaming) + non-circular install detectionfix(windows): detect MSIX/Store Claude Desktop installs (Packages\Claude_*family scan) — new installs aren't Squirrelfix(shell): splash shows only once the webview has painted (kills the WebView2 empty-outline glitch); macOS banner/Dock click → Settings (Reopen)Deferred (accepted): Windows toast-click itself isn't routable at
tauri-plugin-notification2.3.3 — tray left-click opens Settings and the toast body points there.Site redesign (god-rays)
design(site): god-rays backdrop, brand-red hero, OS-aware downloaddesign(site): glossy paint shaders (Paint.astro), unified primary buttons, cursor reflectionValidation
bun installclean · typecheck clean · 1028 pass / 0 fail ·cargo checkclean · beta.2 full release pipeline green.