Repository navigation
[codex] Simplify the playground and harden framework integrations - #5
Merged
Merged
Conversation
eiserv
marked this pull request as ready for review
November 7, 2026 20:15
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.
The playground now uses a shared neutral design with direct shape comparison, controls, and an enlarged corner. The README is shorter, with detailed integration and migration guidance in a separate document. New screenshots include semi-transparent shadows and explicit display widths of 640 and 440 pixels. Five compact badges show the npm version, CI status, monthly downloads, included TypeScript types, and MIT license.
npm run screenshotsregenerates the images.The code changes address specific lifecycle and compatibility issues. Shared DOM and React measurement handles vertical and sideways writing modes, older ResizeObserver size objects, and startup/window-resize fallback measurement. React rebinds when
aschanges. Later inline style changes, removed properties, and priorities survive redraw and cleanup. The shadow parser preserves modern and nested CSS color functions, and fully contracted shadows no longer cause geometry errors.A new dependency-free
squircles/svelteaction supports reactive options and cleanup. A compiled Svelte example demonstrates both the action and modern attachments; the integration guide also includes Vue 3 usage through the DOM entry point. Public API names remain compatible. Documentation, code comments, error messages, examples, test descriptions, playground labels, and screenshots are in English.Validation:
npm run check: type checking, 40 Node tests, and npm package-content verification passed.npm run test:browser: 11 Chromium tests passed, covering lifecycle cleanup, inline changes, writing modes, ResizeObserver fallback, React host changes, Svelte actions and attachments, mobile layout, and idle rendering.npm run screenshotsandnpm run visual:fixturesucceeded; README images retain transparent margins and semi-transparent shadows.Without ResizeObserver, fallback measurement only captures startup and window resize; other layout changes require a polyfill. Rendering limits are documented in the architecture and integration guides.