Skip to content

Add responsive Image component and preload existing fonts - #328

Merged
silveltman merged 6 commits into
mainfrom
perf/lighthouse-images-cls-20261024
Oct 24, 2026
Merged

silveltman merged 6 commits into
mainfrom
perf/lighthouse-images-cls-20261024

Conversation

@silveltman

@silveltman silveltman commented Oct 24, 2026 •

Copy link
Copy Markdown
Collaborator

Existing Astro sites can opt into responsive AVIF with a WebP fallback through the shared Image registry item while retaining existing single-image behavior. The wrapper preserves image attributes and explicitly hides picture sources in grid layouts. The new documentation route, sidebar link and sharing image explain the supported API.

The docs site preloads its original wordmark and upright mono files. Mono is preloaded only on pages that use code, avoiding an unused 10 KB request on the homepage and ten overview routes. No font binary is replaced.

Validation: complete source diagnostics and full Astro/React build pass. All eight registry styles are regenerated. Astro 5 and 7 consumers typecheck and build; six Chromium/Firefox/WebKit API and grid cases pass. All 58 repository browser cases pass, plus the affected unit suite. Independent API and final-scope reviews approve the change; their typing, formatting and navigation findings are resolved.

Final matching Netlify exploration confirms the documentation, selected sidebar link, sharing metadata and expected font preloads. Eighteen final-head Lighthouse runs pass: mobile performance medians home92->93, button93->94, checkbox93->94; desktop100 and accessibility/best-practices/SEO100. Layout-shift values remain explicitly recorded, including small residual desktop shifts. Desktop measurements retain the documented matched legacy Android user agent.

Sites retain their own source resolution, crop, responsive sizing and interactions. No site preset or theme migration is included.

@netlify

netlify Bot commented Oct 24, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for fulldev-ui ready!

Name Link
🔨 Latest commit e33819d
🔍 Latest deploy log https://app.netlify.com/projects/fulldev-ui/deploys/6adc8ce4152e5439182ba0c2
😎 Deploy Preview https://deploy-preview-328--fulldev-ui.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@silveltman
silveltman marked this pull request as ready for review October 24, 2026 10:53
@silveltman
silveltman merged commit 53e43a0 into main Oct 24, 2026
9 checks passed
@silveltman
silveltman deleted the perf/lighthouse-images-cls-20261024 branch October 24, 2026 10:57
@fulldev-release fulldev-release Bot mentioned this pull request Oct 24, 2026
silveltman pushed a commit that referenced this pull request Oct 26, 2026
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## fulldev-ui@0.26.0

### Minor Changes

- [#328](#328)
[`53e43a0`](53e43a0)
Thanks [@silveltman](https://github.com/silveltman)! - Add an optional
Image component with Astro Picture formats, responsive sources and an
unchanged single-image default.

- [#334](#334)
[`6ed056f`](6ed056f)
Thanks [@silveltman](https://github.com/silveltman)! - Data Slot
components start with their page script, with no loading helper. Dialog,
Sheet and NavigationMenu no longer load their controller per media
query: `media` is still accepted but has no effect, and the registry no
longer has the `on-media` item or `src/lib/dialog.ts`; a site that
installed them can delete `src/lib/on-media.ts` and `src/lib/dialog.ts`
once nothing imports them. Header blocks 1 to 5 take `fold="lg"`, the
default, or `fold="xl"` for the breakpoint between their mobile sheet
and desktop navigation, and close whichever one the layout hides at that
breakpoint, which also releases the sheet's scroll lock. Every Data Slot
component also binds new roots on `astro:after-swap`, so a site's own
`astro:page-load` command after ClientRouter navigation reaches a
started controller.

Co-authored-by: fulldev-release[bot] <336258566+fulldev-release[bot]@users.noreply.github.com>
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