{"repo":"thedaviddias/Front-End-Checklist","free":true,"listed":false,"github":"https://github.com/thedaviddias/Front-End-Checklist","clone":"git clone https://github.com/thedaviddias/Front-End-Checklist.git","description":"🗂 The essential checklist for modern web development, for humans and AI agents","language":"MDX","stars":73539,"topics":["ai-agent","ai-agents","checklist","css","front-end-developer-tool","front-end-development","frontend","guidelines","html","javascript","lists","reference","resources","rules","web-development"],"license":null,"category":"qa_platform","readme_excerpt":"# Front-End Checklist\n\n[![Backers on Open Collective](https://opencollective.com/front-end-checklist/backers/badge.svg)](#backers)\n[![Support via Open Collective](https://opencollective.com/front-end-checklist/sponsors/badge.svg)](https://opencollective.com/front-end-checklist)\n\nFront-End Checklist is the open-source front-end quality system for humans and AI agents. It turns front-end best practices into a practical review workflow you can browse on the web, run through with MCP-compatible tools, or work through directly in this README.\n\n- Website: [frontendchecklist.io](https://frontendchecklist.io)\n- Rules: [frontendchecklist.io/rules](https://frontendchecklist.io/rules)\n- MCP server: [mcp.frontendchecklist.io](https://mcp.frontendchecklist.io)\n\nCompanion project: [UX Patterns for Devs](https://uxpatterns.dev/) helps developers choose the right UI pattern before using Front-End Checklist to verify implementation quality.\n\n> [!IMPORTANT]\n> Use the website for browsing and filtering, the MCP server for agent workflows, and this README when you want the checklist in one place.\n\n## What you get\n\n- `385` English rules across `11` active categories\n- `11` MCP tools exposed by the hosted server\n- Rule pages with explanations, remediation guidance, and verification steps\n\n## How to use this checklist\n\n1. Start with the category navigator below and jump straight to the part of the checklist you need.\n2. Work through the checkbox items that apply to your project, audit, or pull request.\n3. Open the linked rule pages when you need the full guidance, examples, verification steps, and AI prompts.\n4. Use [frontendchecklist.io](https://frontendchecklist.io) for interactive browsing, and [mcp.frontendchecklist.io](https://mcp.frontendchecklist.io) when you want agents to use the same rule corpus directly.\n\n## Priority legend\n\n- ![Critical][critical_img] means site-breaking, compliance-sensitive, or security-sensitive issues that should be fixed first.\n- ![High][high_img] means issues with major impact on user experience, accessibility, performance, or discoverability.\n- ![Medium][medium_img] means strong best practices that should be part of normal frontend quality review.\n- ![Low][low_img] means useful improvements that are situational or lower urgency.\n\n## Choose your workflow\n\n### Browse online\n\n- Explore all rules at [frontendchecklist.io/rules](https://frontendchecklist.io/rules)\n- Use curated checklists at [frontendchecklist.io/checklists](https://frontendchecklist.io/checklists)\n- Open a category page for focused audits and implementation guidance\n\n### Choose the right pattern first\n\nFront-End Checklist helps you review implementation quality. If you are still deciding what interface to build, use [UX Patterns for Devs](https://uxpatterns.dev/) to compare common UI patterns, understand tradeoffs, and find practical guidance for forms, navigation, data display, feedback states, authentication, and AI interfaces.\n\n### Contribute to the checklist\n\n- Install dependencies: `pnpm install`\n- Run local development: `pnpm dev`\n- Validate structure: `pnpm validate:rule-structure`\n- Score the corpus: `pnpm score:rules`\n- Regenerate derived artifacts: `pnpm generate:skills` and `pnpm generate:readme`\n\n## Use with MCP\n\nConnect an MCP-capable agent to Front-End Checklist for frontend code review, structured rule lookup, audits, and remediation workflows across React, Next.js, HTML, CSS, JavaScript, accessibility, performance, SEO, security, images, privacy, i18n, and testing.\n\n> [!TIP]\n> Best first use: point an MCP-capable agent at a real component, page, or public URL and explicitly ask it to use the Front-End Checklist MCP for the highest-confidence frontend findings first. Some clients discover installed MCP tools lazily, so naming the server in the prompt helps.\n\n- Public endpoint: [mcp.frontendchecklist.io](https://mcp.frontendchecklist.io)\n- Public docs: [frontendchecklist.io/mcp](https://frontendchecklist.io/mcp)\n- Local/editor integration: stdio server at [`packages/mcp/src/cli.ts`](packages/mcp/src/cli.ts)\n\nWhat you can do:\n\n- Review pasted code or file contents against the checklist\n- Audit a live public URL\n- Fetch a specific rule with remediation guidance\n- Search rules by keyword, category, or priority\n- Get a workflow or quick reference for a focused audit\n\nAgent usage guidance:\n\n- Use `review_code` first for pasted HTML, CSS, JavaScript, React, or Next.js code\n- Use `search_rules` before making frontend accessibility, performance, SEO, security, or image recommendations\n- Use `get_workflow` or `get_checklist_rules` for launch, accessibility, SEO, security, and performance audits\n- Use `audit_url` for public `https://` pages\n\nExample prompts:\n\n- `Use the Front-End Checklist MCP to review this React component and report the highest-confidence findings first.`\n- `Use the Front-End Checklist MCP to audit https://example.com for accessibility, performance, and SEO issues.`\n- `Use the Front-End Checklist MCP to explain the canonical URL rule and suggest a fix with code examples.`\n\n## Use with skills\n\nInstall Front-End Checklist skills when you want reusable audit workflows or focused rule-specific guidance in tools that support them.\n\nInstall:\n\n```bash\nnpx skills add frontendchecklist/skills\nnpx skills add frontendchecklist/skills --skill https\n```\n\nUseful entry points:\n\n- Global audit entry point: [`skills/frontend-checklist-global/SKILL.md`](skills/frontend-checklist-global/SKILL.md)\n- Focused rule skill example: [`skills/https/SKILL.md`](skills/https/SKILL.md)\n\nExample uses:\n\n- Run a broad frontend audit against the full Front-End Checklist corpus\n- Use a focused skill like `https` for security review on one concern\n- Use rule-specific skills to explain why a rule matters and how to fix it\n\n## Checklist\n\n<!-- rules-catalog:start -->\n\n<!-- Generated from 385 English rules. This block is maintained by `pnpm generate:readme`. -->\n\n### Jump to a category\n\n- [HTML](#html) (25) · [Open on the site](https://frontendchecklist.io/rules/html)\n- [CSS](#css) (32) · [Open on the site](https://frontendchecklist.io/rules/css)\n- [JavaScript](#javascript) (26) · [Open on the site](https://frontendchecklist.io/rules/javascript)\n- [Performance](#performance) (43) · [Open on the site](https://frontendchecklist.io/rules/performance)\n- [Accessibility](#accessibility) (95) · [Open on the site](https://frontendchecklist.io/rules/accessibility)\n- [SEO](#seo) (94) · [Open on the site](https://frontendchecklist.io/rules/seo)\n- [Security](#security) (22) · [Open on the site](https://frontendchecklist.io/rules/security)\n- [Images](#images) (25) · [Open on the site](https://frontendchecklist.io/rules/images)\n- [Testing](#testing) (13) · [Open on the site](https://frontendchecklist.io/rules/testing)\n- [Privacy](#privacy) (5) · [Open on the site](https://frontendchecklist.io/rules/privacy)\n- [Internationalization](#internationalization) (5) · [Open on the site](https://frontendchecklist.io/rules/i18n)\n\n### Categories\n\n### HTML\n\n*25 rules. Semantic markup, metadata, forms, and document structure rules.*\n\n[Browse HTML on frontendchecklist.io](https://frontendchecklist.io/rules/html)\n\n- [ ] [Add Subresource Integrity to external scripts](https://frontendchecklist.io/rules/html/subresource-integrity) ![High][high_img]: Use Subresource Integrity (SRI) hash attributes on external scripts and stylesheets loaded from CDNs to ensure the content hasn't been tampered with.\n- [ ] [Add thumbnail images to videos](https://frontendchecklist.io/rules/html/video-thumbnail) ![Medium][medium_img]: HTML5 video elements should have a poster attribute providing a thumbnail image displayed before the video loads or is played.\n- [ ] [Create a custom 404 error page](https://frontendchecklist.io/rules/html/404-page) ![Medium][medium_img]: A custom 404 error page is designed with helpful navigation options for lost users.\n- [ ] [Declare UTF-8 character encoding](https://frontendchecklist.io/rules/html/charset) ![Critical][critical_img]: The charset (UTF-8) is declared correctly as the first element in the head.\n- [ ] [Ensure all IDs are unique](https://frontendchecklist.io/rules/html/unique-id) ![High][high_img]: All ID attributes are unique within the document. No duplicate IDs exist on the page.\n- [ ] [Implement accessible breadcrumb navigation](https://frontendchecklist.io/rules/html/breadcrumb-navigation) ![Medium][medium_img]: Breadcrumb navigation is implemented with proper semantic markup and ARIA attributes for accessibility.\n- [ ] [Implement favicons for all devices](https://frontendchecklist.io/rules/html/favicons) ![Medium][medium_img]: All necessary favicon formats are implemented for browsers, devices, and PWA support.\n- [ ] [Link a Web App Manifest for installability](https://frontendchecklist.io/rules/html/web-app-manifest) ![Medium][medium_img]: Include a Web App Manifest (manifest.json) linked from the HTML head to enable Progressive Web App features like home screen installation, standalone display, and splash screens.\n- [ ] [Load scripts with defer, async, or type=module](https://frontendchecklist.io/rules/html/defer-async) ![High][high_img]: Prevent JavaScript from blocking HTML parsing by using defer, async, or type=module attributes on script tags so the browser can continue building the DOM while scripts download.\n- [ ] [Make custom elements and Web Components accessible](https://frontendchecklist.io/rules/html/custom-element-accessibility) ![Medium][medium_img]: Custom elements must implement ARIA reflection via ElementInternals, keyboard interaction, and form association so that screen readers and assistive technologies can interpret them correctly.\n- [ ] [Make file uploads accessible](https://frontendchecklist.io/rules/html/file-upload-accessibility) ![Medium][medium_img]: File upload components are accessible with proper labels, file type restrictions, and progress feedback.\n- [ ] [Make pagination accessible](https://frontendchecklist.io/rules/htm","default_branch":"main","files":1875,"tree":[".biomeignore",".browserslistrc",".gitea/workflows/routed-ci.yml",".github/FUNDING.yml",".github/ISSUE_TEMPLATE.md",".github/PULL_REQUEST_TEMPLATE.md",".github/actions/audit/README.md",".github/actions/audit/action.yml",".github/workflows/ci.yml",".github/workflows/e2e.yml",".github/workflows/pr.yml",".github/workflows/routed-ci.yml",".gitignore",".mcp.json",".nvmrc",".playwright-mcp/console-2026-05-30T01-59-03-571Z.log",".playwright-mcp/page-2026-05-30T01-59-08-017Z.yml",".vercelignore",".vscode/mcp.json",".vscode/settings.json","AGENTS.md","CLAUDE.md","README-OLD.md","README.md","SPEC.md","apps/e2e/README.md","apps/e2e/config/test.config.ts","apps/e2e/fixtures/test-helpers.ts","apps/e2e/fixtures/test.fixture.ts","apps/e2e/pages/counter.page.ts","apps/e2e/pages/home.page.ts","apps/e2e/playwright.config.ts","apps/e2e/utils/accessibility.utils.ts","apps/e2e/utils/performance.utils.ts","apps/e2e/utils/test.utils.ts","apps/web/.env.example","apps/web/.lighthouserc.json","apps/web/TESTING-STRATEGY.md","apps/web/actions/checklist-actions.ts","apps/web/actions/profile-actions.ts","apps/web/app/(site)/(account)/layout.tsx","apps/web/app/(site)/(account)/profile/page.tsx","apps/web/app/(site)/(account)/profile/profile-account-card.tsx","apps/web/app/(site)/(account)/profile/profile-editor-header.tsx","apps/web/app/(site)/(account)/profile/profile-form.tsx","apps/web/app/(site)/(account)/profile/profile-github-metadata-section.tsx","apps/web/app/(site)/(account)/profile/profile-page-client.tsx","apps/web/app/(site)/(account)/profile/profile-page-shell.tsx","apps/web/app/(site)/(account)/profile/profile-sections.tsx","apps/web/app/(site)/(account)/profile/profile-sync-response.ts","apps/web/app/(site)/(account)/profile/profile-types.ts","apps/web/app/(site)/(account)/profile/profile-url-section.test.tsx","apps/web/app/(site)/(account)/profile/profile-url-section.tsx","apps/web/app/(site)/(account)/settings/page.tsx","apps/web/app/(site)/(account)/settings/settings-page-client.tsx","apps/web/app/(site)/(account)/settings/settings-page-shell.tsx","apps/web/app/(site)/about/page.tsx","apps/web/app/(site)/audits/audits-page-client.tsx","apps/web/app/(site)/audits/page.tsx","apps/web/app/(site)/checklists/[slug]/__tests__/page.test.tsx","apps/web/app/(site)/checklists/[slug]/checklist-mdx-content.tsx","apps/web/app/(site)/checklists/[slug]/page.tsx","apps/web/app/(site)/checklists/page.tsx","apps/web/app/(site)/dashboard/page.tsx","apps/web/app/(site)/error.tsx","apps/web/app/(site)/guide/guide-components.tsx","apps/web/app/(site)/guide/page.tsx","apps/web/app/(site)/guides/[slug]/__tests__/page.test.tsx","apps/web/app/(site)/guides/[slug]/page.tsx","apps/web/app/(site)/guides/__tests__/page.test.tsx","apps/web/app/(site)/guides/page.tsx","apps/web/app/(site)/layout.tsx","apps/web/app/(site)/list/[publicId]/page.tsx","apps/web/app/(site)/list/[publicId]/shared-checklist-view.tsx","apps/web/app/(site)/lists/[id]/checklist-header-sections.tsx","apps/web/app/(site)/lists/[id]/checklist-header.tsx","apps/web/app/(site)/lists/[id]/checklist-progress-card.tsx","apps/web/app/(site)/lists/[id]/checklist-rules-section.tsx","apps/web/app/(site)/lists/[id]/page-client.tsx","apps/web/app/(site)/lists/[id]/page-states.tsx","apps/web/app/(site)/lists/[id]/page.tsx","apps/web/app/(site)/lists/checklist-framework-select.tsx","apps/web/app/(site)/lists/create-checklist-form.tsx","apps/web/app/(site)/lists/layout.tsx","apps/web/app/(site)/lists/lists-page-client.tsx","apps/web/app/(site)/lists/page.tsx","apps/web/app/(site)/lists/user-checklist-card.tsx","apps/web/app/(site)/mcp/__tests__/page.test.tsx","apps/web/app/(site)/mcp/install-links.ts","apps/web/app/(site)/mcp/mcp-page-content.tsx","apps/web/app/(site)/mcp/mcp-section-components.tsx","apps/web/app/(site)/mcp/page-data-types.ts","apps/web/app/(site)/mcp/page-data.ts","apps/web/app/(site)/mcp/page.tsx","apps/web/app/(site)/mentions/__tests__/page.test.tsx","apps/web/app/(site)/mentions/page.tsx","apps/web/app/(site)/page.tsx","apps/web/app/(site)/report/[publicId]/page.tsx","apps/web/app/(site)/rules/[category]/[slug]/__tests__/page.test.tsx","apps/web/app/(site)/rules/[category]/[slug]/__tests__/rule-page-sections.test.tsx","apps/web/app/(site)/rules/[category]/[slug]/page.tsx","apps/web/app/(site)/rules/[category]/[slug]/related-rules-section.tsx","apps/web/app/(site)/rules/[category]/[slug]/rule-page-content.tsx","apps/web/app/(site)/rules/[category]/[slug]/rule-page-helpers.ts","apps/web/app/(site)/rules/[category]/[slug]/rule-page-resources.tsx","apps/web/app/(site)/rules/[category]/[slug]/rule-page-sections.tsx","apps/web/app/(site)/rules/[category]/[slug]/rule-page-support.tsx","apps/web/app/(site)/rules/[category]/__tests__/page.test.tsx","apps/web/app/(site)/rules/[category]/page.tsx","apps/web/app/(site)/rules/__tests__/page.test.tsx","apps/web/app/(site)/rules/page.tsx","apps/web/app/(site)/u/[username]/__tests__/public-profile-client.test.tsx","apps/web/app/(site)/u/[username]/page.tsx","apps/web/app/(site)/u/[username]/public-profile-client.tsx","apps/web/app/api/account/export/route.ts","apps/web/app/api/account/route.ts","apps/web/app/api/audits/[publicId]/route.ts","apps/web/app/api/audits/route.ts","apps/web/app/api/auth/[...all]/route.ts","apps/web/app/api/checklists/[id]/__tests__/route.test.ts","apps/web/app/api/checklists/[id]/route.ts","apps/web/app/api/checklists/[id]/share/route.ts","apps/web/app/api/checklists/__tests__/route.test.ts","apps/web/app/api/checklists/public/[publicId]/route.ts","apps/web/app/api/checklists/route.ts","apps/web/app/api/cron/supabase-keepalive/__tests__/route.test.ts","apps/web/app/api/cron/supabase-keepalive/route.ts","apps/web/app/api/fix-suggestion/route.ts","apps/web/app/api/mcp/__tests__/route.test.ts","apps/web/app/api/mcp/content-helpers.ts","apps/web/app/api/mcp/route-helpers.ts","apps/web/app/api/mcp/route.ts","apps/web/app/api/op/[...path]/route.ts","apps/web/app/api/profile/__tests__/route-get.test.ts","apps/web/app/api/profile/__tests__/route.test.ts","apps/web/app/api/profile/github-sync/__tests__/route.test.ts","apps/web/app/api/profile/github-sync/route.ts","apps/web/app/api/profile/route.ts","apps/web/app/api/progress/route.ts","apps/web/app/api/rules/[ruleId]/feedback/__tests__/route.test.ts","apps/web/app/api/rules/[ruleId]/feedback/route.ts","apps/web/app/api/subscribe/me/__tests__/route.test.ts","apps/web/app/api/subscribe/me/route.ts","apps/web/app/api/subscribe/route.ts","apps/web/app/api/waitlist/route.ts","apps/web/app/global-error.tsx","apps/web/app/globals.css","apps/web/app/layout.tsx","apps/web/app/llms.txt/route.ts","apps/web/app/not-found.tsx","apps/web/app/og-image.png/route.tsx","apps/web/app/robots.ts","apps/web/app/sitemap.ts","apps/web/components.json","apps/web/components/__tests__/ai-prompts.test.tsx","apps/web/components/__tests__/counter.test.tsx","apps/web/components/__tests__/rule-feedback-card.test.tsx","apps/web/components/about/creator-projects.tsx","apps/web/components/about/upcoming-book.tsx","apps/web/components/account/account-sidebar.tsx","apps/web/components/analytics/tracked-copy-button.tsx","apps/web/components/analytics/tracked-link.tsx","apps/web/components/animation/motion.tsx","apps/web/components/auth/auth-button-profile.ts","apps/web/components/auth/auth-button.test.tsx","apps/web/components/auth/auth-button.tsx","apps/web/components/checklists/actions/add-to-checklist-dropdown.tsx","apps/web/components/checklists/actions/checklist-action-bar-props.test.ts","apps/web/components/checklists/actions/checklist-action-bar-props.ts","apps/web/components/checklists/actions/checklist-action-bar.tsx","apps/web/components/checklists/browser/checklist-browser.tsx","apps/web/components/checklists/browser/checklist-card.tsx","apps/web/components/checklists/checklist-curation.ts","apps/web/components/checklists/checklist-difficulty-badge.tsx","apps/web/components/content/callouts/callout.tsx","apps/web/components/content/code/__tests__/code-tabs.test.tsx","apps/web/components/content/code/code-block.tsx","apps/web/components/content/code/code-tabs.tsx","apps/web/components/content/disclosures/faq-accordion.tsx","apps/web/components/content/page/__tests__/page-hero.test.tsx","apps/web/components/content/page/page-hero.tsx","apps/web/components/content/summary/tldr-summary.tsx","apps/web/components/feedback/progress/progress-indicator.tsx","apps/web/components/feedback/progress/segmented-progress-bar.tsx","apps/web/components/feedback/status/error-boundary.tsx","apps/web/components/guides/__tests__/guide-card.test.tsx","apps/web/components/guides/guide-card.tsx","apps/web/components/guides/guide-detail-sections.tsx","apps/web/components/guides/guide-filters.tsx","apps/web/components/guides/guide-link-builders.ts","apps/web/components/guides/guide-related-card.tsx","apps/web/components/homepage/bottom-cta.tsx","apps/web/components/homepage/category-card.tsx","apps/web/components/homepage/category-section.tsx","apps/web/components/homepage/checklist-accent-colors.ts","apps/web/components/homepage/checklists-preview.tsx","apps/web/components/homepage/faq-section.tsx","apps/web/components/homepage/features-bento.tsx","apps/web/components/homepage/hero-badges.tsx","apps/web/components/homepage/hero-section.tsx","apps/web/components/homepage/home-page-content.tsx","apps/web/components/homepage/mcp-section.tsx","apps/web/components/homepage/mentions-marquee-utils.ts","apps/web/components/homepage/mentions-marquee.tsx","apps/web/components/homepage/mentions-section.tsx","apps/web/components/homepage/pro-teaser.tsx","apps/web/components/homepage/resume-banner.tsx","apps/web/components/homepage/rule-count-display.ts","apps/web/components/homepage/sponsor-avatar.tsx","apps/web/components/homepage/sponsors-bubbles.tsx","apps/web/components/homepage/sponsors-inline.tsx","apps/web/components/homepage/sponsors-section-async.tsx","apps/web/components/homepage/sponsors-section.tsx","apps/web/components/homepage/stats-bar.tsx","apps/web/components/homepage/waitlist-form.tsx","apps/web/components/links/github-link.tsx","apps/web/components/links/x-link.tsx","apps/web/components/mcp/cli-notify-form.tsx","apps/web/components/mcp/mcp-sidebar-card.tsx","apps/web/components/mcp/setup-card.tsx","apps/web/components/mcp/setup-tabs.tsx","apps/web/components/mcp/tool-card.tsx","apps/web/components/mentions/browser/mentions-browser.tsx","apps/web/components/mentions/embeds/mention-embeds-compact.tsx","apps/web/components/mentions/embeds/mention-embeds.tsx","apps/web/components/mentions/embeds/x-mention-card.tsx","apps/web/components/navigation/__tests__/category-quick-nav.test.tsx","apps/web/components/navigation/__tests__/header.test.tsx","apps/web/components/navigation/app-shell.tsx","apps/web/components/navigation/command-palette-provider.tsx","apps/web/components/navigation/command-palette.tsx","apps/web/components/navigation/footer.tsx","apps/web/components/navigation/header.tsx","apps/web/components/navigation/quick-nav/category-quick-nav.tsx","apps/web/components/navigation/quick-nav/checklist-quick-nav.tsx","apps/web/components/navigation/quick-nav/progress-pill-nav.tsx","apps/web/components/navigation/theme-toggle.tsx","apps/web/components/rules/browser/__tests__/rules-browser-filters.test.tsx","apps/web/components/rules/browser/rules-browser-filters.tsx","apps/web/components/rules/browser/rules-browser-headers.tsx","apps/web/components/rules/browser/rules-browser-renderer.tsx","apps/web/components/rules/browser/rules-browser-reset-dialog.tsx","apps/web/components/rules/browser/rules-browser-toolbar-components.tsx","apps/web/components/rules/browser/rules-browser-toolbar.tsx","apps/web/components/rules/browser/rules-browser-types.ts","apps/web/components/rules/browser/rules-browser.tsx","apps/web/components/rules/browser/use-rules-browser-state.ts","apps/web/components/rules/controls/rule-checkbox.tsx","apps/web/components/rules/detail/__tests__/copy-markdown-dropdown.test.tsx","apps/web/components/rules/detail/__tests__/share-button.test.tsx","apps/web/components/rules/detail/ai-prompts.tsx","apps/web/components/rules/detail/copy-markdown-dropdown.tsx","apps/web/components/rules/detail/mdx-components.tsx","apps/web/components/rules/detail/resource-card.tsx","apps/web/components/rules/detail/rule-feedback-card.tsx","apps/web/components/rules/detail/share-button.tsx","apps/web/components/rules/detail/skill-install-box.tsx","apps/web/components/rules/detail/table-of-contents.tsx","apps/web/components/rules/detail/use-with-ai-disclosure.tsx","apps/web/components/rules/listing/rule-row-badges.tsx","apps/web/components/rules/listing/rule-row.tsx","apps/web/components/testing/fixtures/counter.tsx","apps/web/content-collections-helpers.ts","apps/web/content-collections-rule-utils.ts","apps/web/content-collections.ts","apps/web/data/mentions-input.json","apps/web/data/mentions.json","apps/web/data/sponsors-fallback.json","apps/web/e2e/smoke.spec.ts","apps/web/hooks/__tests__/use-scroll-direction.test.ts","apps/web/hooks/use-filters.ts","apps/web/hooks/use-hydrated.ts","apps/web/hooks/use-intersection-in-view.ts","apps/web/hooks/use-progress.ts","apps/web/hooks/use-reduced-motion-preference.ts","apps/web/hooks/use-rule-feedback.ts","apps/web/hooks/use-scroll-direction.ts","apps/web/hooks/use-user-checklists.ts","apps/web/instrumentation-client.ts","apps/web/instrumentation.ts","apps/web/jest.config.cjs","apps/web/jest.setup.cjs","apps/web/lib/__tests__/social-links.test.ts","apps/web/lib/__tests__/telemetry-interactions.test.ts","apps/web/lib/accessibility/color.ts","apps/web/lib/accessibility/focus.ts","apps/web/lib/accessibility/preferences.ts","apps/web/lib/accessibility/screen-reader.ts","apps/web/lib/accessibility/utils.ts","apps/web/lib/auth-actions.ts","apps/web/lib/badge-styles.ts","apps/web/lib/bot-protection.ts","apps/web/lib/cache.ts","apps/web/lib/export-checklist.ts","apps/web/lib/framework-preferences.ts","apps/web/lib/github-sponsors.ts","apps/web/lib/github.ts","apps/web/lib/mcp-cache.ts","apps/web/lib/mentions.ts","apps/web/lib/open-collective.ts","apps/web/lib/public-content-cache.ts","apps/web/lib/rate-limit.ts","apps/web/lib/remote-data.ts","apps/web/lib/rule-content.ts","apps/web/lib/safe-action-result.ts","apps/web/lib/safe-action.ts","apps/web/lib/seo-guide-schema.tsx","apps/web/lib/seo-list-schemas.ts","apps/web/lib/seo-metadata.ts","apps/web/lib/seo-schema.tsx","apps/web/lib/seo.tsx","apps/web/lib/server/__tests__/profile-service.test.ts","apps/web/lib/server/checklist-service.ts","apps/web/lib/server/github-import-update.ts","apps/web/lib/server/github-profile-fetch.ts","apps/web/lib/server/profile-service.ts","apps/web/lib/social-links.ts","apps/web/lib/sponsors-server.ts","apps/web/lib/sponsors.ts","apps/web/lib/telemetry-client.ts","apps/web/lib/telemetry-events.ts","apps/web/lib/telemetry-interactions.ts","apps/web/lib/telemetry-server.ts","apps/web/lib/url-metadata.ts","apps/web/next.config.js","apps/web/package.json","apps/web/playwright.config.ts","apps/web/postcss.config.js","apps/web/providers/query-provider.tsx","apps/web/proxy.ts","apps/web/public/apple-touch-icon.svg","apps/web/public/favicon.svg","apps/web/public/fonts/poppins-bold.ttf","apps/web/public/fonts/poppins-regular.ttf","apps/web/public/guides/cover-core-web-vitals.svg","apps/web/public/guides/cover-opinionated-checklists.svg","apps/web/public/priority/critical.svg","apps/web/public/priority/high.svg","apps/web/public/priority/low.svg","apps/web/public/priority/medium.svg","apps/web/public/projects/indie-dev-toolkit/indie-dev-toolkit.jpg","apps/web/public/projects/indie-dev-toolkit/indie-dev-toolkit.mp4","apps/web/public/projects/indie-dev-toolkit/indie-dev-toolkit.webp","apps/web/public/projects/links-base/links-base.webp","apps/web/public/projects/llms-txt-hub/llms-txt-hub.jpeg","apps/web/public/projects/llms-txt-hub/llms-txt-hub.webp","apps/web/public/projects/start-and-ship/practical-guides-junior-devs-start-and-ship.png","apps/web/public/projects/ux-patterns-developers/ux-patterns-developers.jpg","apps/web/public/projects/ux-patterns-developers/ux-patterns-developers.webp","apps/web/public/site.webmanifest","apps/web/public/start-and-ship/practical-guides-junior-devs-start-and-ship.png","apps/web/scripts/enrich-mentions.ts","apps/web/scripts/x-metadata.ts","apps/web/sentry.edge.config.ts","apps/web/sentry.server.config.ts","apps/web/test-utils/accessibility.tsx","apps/web/test-utils/index.tsx","apps/web/test/mocks/auth-client.ts","apps/web/tsconfig.json","apps/web/types/images.d.ts","apps/web/types/jest-dom.d.ts","apps/web/utils/validation.ts","apps/web/vercel.json","biome.json","commitlint.config.js","configs/config-next/index.ts","configs/config-next/package.json","configs/config-next/tsconfig.json","configs/config-typescript/README.md","configs/config-typescript/base.json","configs/config-typescript/nextjs.json","configs/config-typescript/node.json","configs/config-typescript/package.json","configs/config-typescript/react-library.json","docs/audit-comparison/README.md","docs/audit-comparison/our-results.json","docs/card-links.md","docs/generated/rules-catalog.md","docs/global-skill-benchmark.md","docs/guide-template.mdx","docs/guides-authoring.md","docs/launch-readiness-checklist.md","docs/mcp-quality.md","docs/production-launch-readiness.md","docs/rule-structure.md","docs/rule-template.mdx","docs/superpowers/specs/2026-03-11-code-rendering-design.md","docs/superpowers/specs/2026-04-04-next-safe-action-rollout-design.md","docs/v2-positioning-memo.md","jest.base.cjs","lefthook.yml","package.json","packages/analytics/README.md","packages/analytics/head.tsx","packages/analytics/index.tsx","packages/analytics/package.json","packages/analytics/providers/openpanel-identify.tsx","packages/analytics/providers/openpanel.tsx","packages/analytics/server.ts","packages/analytics/tsconfig.json"],"storefront":"/r/thedaviddias","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/thedaviddias/Front-End-Checklist/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}