Pulling fix/carousel-images-served into develop#1268
Open
github-actions[bot] wants to merge 14 commits into
Open
Pulling fix/carousel-images-served into develop#1268github-actions[bot] wants to merge 14 commits into
github-actions[bot] wants to merge 14 commits into
Conversation
… LCP Re-encode the three slideshow assets to AVIF and WebP (the tubulin PNG drops from 397 KiB to 40 KiB AVIF) and serve them via <picture> with the original JPEG/PNG as fallback. Add explicit width/height to lock each image's aspect ratio, eagerly load the first slide with fetchpriority="high" (it is the page LCP element), and lazy-load the rest. Declare the .webp/.avif asset modules so the new imports type-check. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The status row swaps from the "unavailable" placeholder to the loaded popover once the async uptime fetch resolves, shifting everything below it. Wrap the swap in a fixed-height flex container so the transition no longer contributes to cumulative layout shift. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add a build.rollupOptions.output.manualChunks config that breaks the single 1.6 MB entry chunk into separately cacheable vendor chunks (mui, apollo, editor, fp, fontawesome). Enable build.sourcemap so production stack traces map back to source and Lighthouse can attribute code (fixes valid-source-maps). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add preconnect hints for graphql.dictybase.dev and storage.dictybase.dev so the browser opens those connections before the first GraphQL request and logo fetch on the critical path. Add a real public/robots.txt; without one the SPA fallback served index.html for /robots.txt, which Lighthouse parsed as 28 invalid directives. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Read the uptime summary URL from VITE_APP_STATUS_JSON, defaulting to the existing GitHub raw URL. This lets deployments point the request at a dictybase-served proxy so it stays on a trusted, cacheable origin and off the page's critical path, instead of hitting raw.githubusercontent.com directly. Document the override (commented) in the production and staging env files. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Pass alt="dictyBase" to the header logo image so it has an accessible name (fixes the image-alt accessibility and SEO audits). Map the DCR News item date headings from h3 to a rendered h2 so the homepage news section no longer skips a heading level under its h1 title, matching the existing NewsItem behavior (fixes heading-order). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Navbar: make each dropdown a list item containing its sub-menu <ul> (instead of a <ul> nested directly in a <ul>), turn the dropdown toggle into a keyboard-operable role=button with aria-haspopup/aria-expanded, change the mobile-menu wrapper from a stray <li> to a <div>, and give the hamburger MenuIcon an aria-label and aria-expanded. Fixes the list, listitem and aria-command-name audits. Touch targets: enlarge footer links to a >=24px tap target and give the header search field a min-width so it cannot collapse to an untappable sliver. Fixes target-size. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Added a workflow section to describe the steps to take before committing code, including linting, unit tests, build, and E2E tests. Also added a section to encourage writing unit tests for code changes.
…tests Replace the `??` fallback for the uptime summary URL with a pipe of fromNullable + getOrElse, matching the project's functional style. Add tests for useDictyStatus covering the fetch-success (some), fetch-failure (none), and JSON-parse-failure (none) paths. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…d height Verify the container shows the unavailable placeholder when there is no status data, swaps to the live-status popover when data is present, and reserves a fixed min-height so the swap does not shift the page layout. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add Enter and Space keydown tests for the dropdown toggle so the new keyboard handler (added alongside the role="button" accessibility change) is exercised, restoring patch coverage on Dropdown.tsx. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The lockfile had floated @playwright/test up to 1.56.1, which hits a known browser-install regression (microsoft/playwright#40998) where `playwright install` stalls after downloading Chrome. This stalled the "Install Playwright" step of the integration-testing workflow indefinitely across all four apps. Bump the spec from ^1.44.0 to ^1.60.0 and refresh the lockfile so CI installs a known-good version. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
static-server only serves real files under /assets (its --sf flag) and falls back to index.html for everything else, so the carousel images placed at /carousel/* in public/ would 404 in production. Move them back into packages/ui-frontpage/src/assets/carousel and import them so Vite emits them as hashed /assets/* files that static-server serves. The AVIF/WebP <picture> sources, intrinsic width/height, and first-slide fetchpriority/eager loading are retained. Drop the index.html <link rel="preload"> for the first slide: imported assets get hashed filenames with no stable path to preload statically, and it pointed at the now-removed /carousel path. fetchpriority="high" on the eager first slide keeps the LCP prioritization. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The documentation is updated to include instructions on how to verify changes that affect the build process. This ensures that build-related changes are thoroughly tested before deployment.
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.
No description provided.