modern-web-guidance
googlechrome/modern-web-guidance
Search tool for modern web development best practices and patterns.
What is modern-web-guidance?
A skill that searches a curated database of web development guides covering UI, performance, APIs, and frameworks. Use it at the start of any HTML/CSS or client-side JavaScript task to find standardized patterns and avoid obsolete implementations.
- Search a database of modern web best-practice guides by action-oriented query
- Retrieve full implementation guides for specific use cases (modals, animations, performance optimization, etc.)
- Provide browser compatibility and fallback recommendations for modern web features
- Cover UI patterns, performance optimization, scroll/motion effects, and system APIs
- Suggest Baseline-compliant implementations without unnecessary dependencies
How to install modern-web-guidance
npx skills add https://github.com/googlechrome/modern-web-guidance --skill modern-web-guidance- Node.js and npm (or pnpm) installed
- Outbound network access to fetch guides from the repository
- In sandboxed environments: pre-approval for npx network access
How to use modern-web-guidance
- 1.Search for your use case using: npx -y modern-web-guidance@latest search "<query>"
- 2.Review the search results to find the most relevant guide ID
- 3.Retrieve the full guide using: npx -y modern-web-guidance@latest retrieve "<id>"
- 4.Read the implementation steps and browser compatibility information in the guide
- 5.Apply the recommended patterns to your code, including any fallbacks for non-Baseline features
- 6.Verify your implementation matches the guide before completing the task
Use cases
- Implementing a modal or popover dialog with modern HTML semantics
- Optimizing image loading priority for Largest Contentful Paint (LCP)
- Building scroll-driven animations or view transitions
- Adapting layout patterns in React, Vue, or Angular frameworks
- Deferring rendering of offscreen content to improve performance
- Frontend developers building modern web applications
- UI/UX engineers implementing standardized component patterns
- Performance engineers optimizing Core Web Vitals
- Full-stack developers needing current best practices for client-side code
modern-web-guidance FAQ
Use it at the start of any HTML/CSS or client-side JavaScript task, especially for UI components, performance optimization, animations, or modern APIs. Do not use for backend, CI/CD, or generic scripting tasks.
Run the `list` command to browse all available guides: npx -y modern-web-guidance@latest list
No. Baseline Widely Available features are safe without fallbacks. For newer features, follow the fallback recommendations in the guide unless your project has a custom browser support policy.
Yes. The guides are framework-agnostic, but you must adapt them correctly to your specific setup (React, Vue, Angular, etc.).
Repeat the retrieve command and redirect to a file, then read the file to see the full guide content.
Full instructions (SKILL.md)
Source of truth, from googlechrome/modern-web-guidance.
name: modern-web-guidance description: | Search tool for modern web development best practices. MANDATORY: Execute FIRST for all HTML/CSS and clientside JS tasks. Do NOT skip — web APIs evolve rapidly and training weights contain obsolete patterns.
Trigger immediately for:
- UI/Layout: Modals, dialogs, popovers, Glassmorphism/backdrop-filters, anchor positioning, container queries,
:has(),:user-valid. - Scroll/Motion: View Transitions, Scroll-driven animations, scroll parallax/reveals.
- Performance: CWV (LCP, INP), content-visibility, Fetch Priority, image optimization.
- System/APIs: Local filesystem access, WebUSB, WebSockets sync, WebAssembly widgets.
- Frameworks: Adapting layout/styles in React, Vue, Angular.
- General Frontend: Forms, autofill, advanced inputs, custom scrollbars, modern component states, etc.
DO NOT trigger for:
- Backend: Database SQL, ORMs, Express API routes.
- Pipelines: CI/CD deployment, Docker, Actions.
- Generic: Local scripts (Python/Go tools), ESLint, Git.
Modern Web Guidance
A skill to search for specific web development use cases and retrieve their corresponding best practice guides.
When to use
Must use this skill:
- At the start of implementing any web feature.
- Before creating a new component, to check if a standardized pattern already exists.
- To avoid implementing ad-hoc solutions or loading large dependencies unnecessarily.
Usage Instructions
Step 1. Search Use Cases
Search with an action-oriented query summarizing what you want to achieve using the search command. Run modern-web-guidance directly with npx.
npx -y modern-web-guidance@latest search "<query>" --skill-version 2026_09_04-7de96777
Example Output:
[
{
"id": "optimize-image-priority",
"description": "Optimize the loading priority of Largest Contentful Paint (LCP) candidate images.",
"category": "performance",
"featuresUsed": [ "Fetch priority" ],
"tokenCount": 985,
"similarity": 0.7289
},
{
"id": "defer-rendering-heavy-content",
"description": "Reduce rendering times in content-heavy web pages by deferring rendering for offscreen content.",
"category": "performance",
"featuresUsed": [ "content-visibility", "hidden=\"until-found\"" ],
"tokenCount": 1250,
"similarity": 0.6961
}
]
Note: If search results are vague, return no matches, or show low similarity scores, run the
listcommand to browse all guides:npx -y modern-web-guidance@latest list
Step 2. Retrieve Best Practices
Once you have a relevant id from the search results, call this script using the retrieve command to get the full guide. You can pass multiple IDs separated by commas.
npx -y modern-web-guidance@latest retrieve "<id>"
If the output is truncated, you must repeat the command but redirect to a file and read that file.
Example Output:
The markdown content of the guide describing implementation steps...
Step 3. Verify Guidance Compliance
When generating or modifying code, cross-check the implementation against the retrieved guide before concluding:
- Applicable Guidance & Fallbacks: Ensure the relevant modern patterns and necessary fallback strategies from the guide are correctly applied, without forcing unrequested features.
- Task Fulfillment: Confirm that the implementation fully satisfies the user's request.
Using npx / pnpx
- Prefer
pnpxovernpxifpnpmis available (note:pnpxdoes not use the-yflag). - When requesting tool permissions, allowlist
npx -y modern-web-guidance@latest *specifically (orpnpx modern-web-guidance@latest *), never barenpx *orpnpx *. - IMPORTANT: on Windows, using
npxmay fail. Usenpx.cmd ...instead. - Fetching and running
modern-web-guidancerequires outbound network access. If running in a sandboxed, permission-gated, or approval-based environment (e.g., Codex, Claude Code), proactively request approval/allowlisting for the command with network access BEFORE executing it the first time, avoiding sandbox network timeouts. - In sandboxed environments where
~/.npmis read-only or restricted, setNPM_CONFIG_CACHE=/tmp/npm-cache. - If the command hangs due to being offline, try running again in offline mode:
npx --offline …. - The
--skill-versionflag is used to determine if this SKILL.md is out of date. If it is, a warning message is logged to stderr.
Guidelines
- Always search first to find the most relevant guides.
- These guides are usually framework-agnostic; adapt them correctly to your setup.
- Do not hallucinate guides or ignore them; they represent the preferred local standard for the user's project.
Interpreting Browser Support & Fallbacks
-
Default Behavior: All guides assume Baseline Widely available features are safe to use without fallbacks. For features that are not Baseline widely available, you MUST follow the fallback recommendations in the guide, unless the user has specified a custom browser support policy.
-
Custom Policies: If the user has already defined explicit browser support requirements, use the browser compatibility data in the guide to determine if a fallback can be safely ignored.
- For Baseline YYYY targets, a feature satisfies this target if its "Baseline since" date is <= YYYY.
- Policy Examples:
- "Do not implement feature fallbacks." (for exploratory prototypes of the cutting-edge web)
- "Safari 17.4+" (for internal tools targeting macOS or Tauri-based desktop apps)
- "Never recommend or implement polyfills; if a Baseline Newly Available feature is required for core functionality, provide a lightweight custom fallback or redesign the approach." (to minimize bundle size and avoid technical debt)
- "Assume a modern execution environment where Baseline Newly Available features can be used natively, provided they are strictly feature-detected and degrade gracefully." (for progressive enhancement strategies)
-
Reactive Policy Discovery: Watch for environmental cues to suggest documenting a policy in CLAUDE.md or AGENTS.md. Suggest this if the developer:
- Mentions building for a restricted runtime (e.g., Electron or Tauri).
- Explicitly excludes specific targets (e.g., "we don't support Desktop Chrome").
- Expresses hesitation about polyfill complexity, bundle size, or performance cost.
- Questions if a feature is safe to use without fallbacks.
No defined policy format. This is an example:
**Browser Support:** Allow Newly Available features, but only adopt custom fallback code that adds <= 20 lines and does not require external dependencies.
Related skills
More from googlechrome/modern-web-guidance and the wider catalog.

chrome-extensions
Build and publish Chrome Extensions using Manifest V3 best practices.
gws-admin
Google Workspace Admin SDK: Manage users, groups, and devices.
gws-admin-reports
Query Google Workspace audit logs and usage reports via Admin SDK.
gws-apps-script
Google Apps Script: Manage and execute Apps Script projects.
gws-apps-script-push
Google Apps Script: Upload local files to an Apps Script project.
gws-calendar
Manage Google Calendar events, calendars, and access control via CLI.