Skip to content

Unify the Slowmo toolbar, package, and extension lifecycle - #32

Draft
seflless wants to merge 6 commits into
mainfrom
codex/toolbar-redesign
Draft

Unify the Slowmo toolbar, package, and extension lifecycle#32
seflless wants to merge 6 commits into
mainfrom
codex/toolbar-redesign

Conversation

@seflless

@seflless seflless commented Jul 26, 2026

Copy link
Copy Markdown
Owner

Summary

  • adds a reversible, owner-aware headless controller with side-effect-free imports
  • extracts one framework-independent toolbar host shared by vanilla JS, React, the demo, and the Chrome extension
  • adds slowmo/toolbar and keeps React isolated behind slowmo/react
  • adds SlowmoToolbar, useSlowmoController, useSlowmoSnapshot, and useSlowmo
  • rebuilds the extension as an action-triggered, per-tab session with complete close/navigation teardown
  • updates the single-page landing page, local horse video, Motion demo, deep links, examples, documentation, and release instructions

Chrome extension behavior

  • nothing is injected until the toolbar icon or assigned shortcut is used
  • activation affects the current tab and its eligible frame tree; tabs are independent
  • close removes the toolbar and restores Slowmo-owned timing effects in every injected frame
  • re-triggering starts a clean session at 1×
  • reload/navigation returns the document to an inactive state
  • rapid activation, navigation, partial injection, Trusted Types, and stale cleanup races are guarded
  • placement/orientation persist; speed and open state do not
  • suggested shortcut: Command+Shift+S on macOS, Ctrl+Shift+S elsewhere; remappable in chrome://extensions/shortcuts

Package and examples

  • package version: 0.17.0
  • extension version: 1.4.0
  • headless example: examples/headless-vanilla.js
  • vanilla toolbar example: examples/toolbar-vanilla.js
  • custom React controls: examples/PlaybackControls.tsx
  • exact release steps: docs/RELEASING.md

Validation

  • bun run typecheck
  • unit: 90 passed, 1 skipped
  • Chromium/Firefox/WebKit: 101 passed, 1 skipped
  • real Chrome extension E2E: 9 passed
  • library, demo, and extension production builds
  • exact Store ZIP generated and inspected
  • npm dry-run package: 30 files, React excluded from non-React entry points
  • final architecture/spec review: no remaining P1/P2 findings

@vercel

vercel Bot commented Jul 26, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
slowmo Ready Ready Preview, Comment Jul 28, 2026 7:06pm

Request Review

@seflless seflless changed the title Redesign the Slowmo toolbar and demo Unify the Slowmo toolbar, package, and extension lifecycle Jul 28, 2026
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