Skip to content

Feat/ocm wordmark loading screen#212

Closed
mathaix wants to merge 3 commits intokernel:mainfrom
mathaix:feat/ocm-wordmark-loading-screen
Closed

Feat/ocm wordmark loading screen#212
mathaix wants to merge 3 commits intokernel:mainfrom
mathaix:feat/ocm-wordmark-loading-screen

Conversation

@mathaix
Copy link
Copy Markdown

@mathaix mathaix commented Apr 11, 2026

Checklist

  • A link to a related issue in our repository
  • A description of the changes proposed in the pull request.
  • @mentions of the person or team responsible for reviewing proposed changes.

Note

Low Risk
UI-only change that swaps the loading indicator in connect.vue and about.vue; risk is limited to potential visual/layout regressions in these overlays.

Overview
Replaces the spinning logo.svg loading indicator in connect.vue and about.vue with a two-tone OpenClaw Machines wordmark.

Adds new SCSS for the wordmark styling and introduces ocm-wordmark-popin/ocm-wordmark-breathe keyframe animations to handle the pop-in + breathing loading effect.

Reviewed by Cursor Bugbot for commit b5931d3. Bugbot is set up for automated code reviews on this repo. Configure here.

claude added 3 commits April 11, 2026 19:02
…tion

The Neko loading screen and About dialog now render an animated orange
orb instead of the static kernel.sh wordmark. Pure-CSS port of the
OrbBackground component from the OpenClaw Machines frontend
(frontend/src/components/hero/OrbBackground.tsx, commit 06c483a).

Three layers:
- Primary orb: blurred radial gradient, #fb923c → #f97316 → transparent
- Secondary bloom: smaller counter-breathing layer, #fbbf24 → #f59e0b
- SVG feTurbulence grain overlay at 6% opacity for texture

Animations:
- ocm-orb-popin: 0.9s cubic-bezier pop-in on mount (replaces the old
  scale-0.85/opacity-0.7 pulse)
- ocm-orb-breathe-primary / -bloom: 3.6s infinite breathe with the two
  layers scaling inversely for depth

No JS required — the React useOrbAnimation rAF driver is not needed
for a fixed 140px loading slot. The breathe loop captures the essence
of the organic drift motion without the positioning overhead.
…dmark

Swap the orange orb (primary + bloom + grain SVG) for a two-tone
"OpenClaw Machines" wordmark, keeping the same pop-in animation
(0.9s cubic-bezier(0.34, 1.56, 0.64, 1), scale 0.05 → 1.06 → 1).

- Red "OpenClaw" (#ef4444) and teal "Machines" (#2dd4bf) match the
  brand treatment in the OCM frontend Layout.tsx.
- 44px / font-weight 900 / Whitney with system fallbacks.
- Pops in, then continuously breathes at ±2% scale + 0.85–1 opacity.
- Applied to both connect.vue (WebRTC connect loading) and about.vue.
The previous timing blinked past too quickly to read. Keep the same
cubic-bezier(0.34, 1.56, 0.64, 1) overshoot curve, just extend the
duration 2.7x so the small-to-big grow is clearly visible. Also slow
the follow-up breathe loop from 3.6s to 5s so the transition from
pop-in to breathe feels consistent.
@firetiger-agent
Copy link
Copy Markdown

Firetiger deploy monitoring skipped

This PR didn't match the auto-monitor filter configured on your GitHub connection:

Any PR that changes the kernel API. Monitor changes to API endpoints (packages/api/cmd/api/) and Temporal workflows (packages/api/lib/temporal) in the kernel repo

Reason: PR title suggests UI/visual changes (wordmark loading screen) with no indication of kernel API or Temporal workflow modifications.

To monitor this PR anyway, reply with @firetiger monitor this.

@mathaix mathaix closed this Apr 11, 2026
Copy link
Copy Markdown

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit b5931d3. Configure here.

}
50% {
transform: scale(1);
transform: scale(1.02);
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Substantial wordmark styles duplicated across two components

Low Severity

The OCM wordmark template markup, all .ocm-wordmark CSS styles, color declarations, and both @keyframes definitions (ocm-wordmark-popin, ocm-wordmark-breathe) are copied verbatim between about.vue and connect.vue (~50 lines of SCSS each). The about.vue comment "see connect.vue for design notes" acknowledges the coupling but doesn't prevent drift. The keyframes are global in Vue 2 scoped CSS, so they're emitted twice. A shared child component or extracting keyframes into the project's existing shared stylesheets would reduce this risk.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit b5931d3. Configure here.

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