diff --git a/.all-contributorsrc b/.all-contributorsrc new file mode 100644 index 0000000..10461ee --- /dev/null +++ b/.all-contributorsrc @@ -0,0 +1,37 @@ +{ + "projectName": "wp-docs", + "projectOwner": "lightspeedwp", + "repoType": "github", + "repoHost": "https://github.com", + "projectDescription": "WordPress documentation and Copilot assets for LightSpeed WordPress projects", + "projectWebsite": "https://lightspeedwp.agency", + "license": "GPL-3.0-or-later", + "files": [ + "README.md" + ], + "imageSize": 100, + "commit": false, + "commitConvention": "conventional", + "contributors": [ + { + "login": "lightspeedwp", + "name": "LightSpeedWP", + "avatar_url": "https://avatars.githubusercontent.com/u/lightspeedwp?v=4", + "profile": "https://github.com/lightspeedwp", + "contributions": [ + "ideas", + "fundingFinding", + "projectManagement", + "business", + "code", + "design", + "doc", + "infra", + "maintenance", + "test" + ] + } + ], + "contributorsPerLine": 7, + "linkToUsage": true +} diff --git a/.all-contributorsrc-docs.md b/.all-contributorsrc-docs.md new file mode 100644 index 0000000..81f7554 --- /dev/null +++ b/.all-contributorsrc-docs.md @@ -0,0 +1,60 @@ +# All Contributors Configuration Documentation + +This document explains the configuration options used in `.all-contributorsrc` for the wp-docs project. + +## Configuration Options + +### Basic Project Information + +- `projectName`: "wp-docs" - WordPress documentation and Copilot assets repository +- `projectOwner`: "lightspeedwp" - GitHub organization that owns the repository +- `repoType`: "github" - Type of version control system +- `repoHost`: "https://github.com" - Base URL for the repository host +- `projectDescription`: "WordPress documentation and Copilot assets for LightSpeed WordPress projects" +- `projectWebsite`: "https://lightspeedwp.agency" - Official project website URL +- `license`: "GPL-3.0-or-later" - Project license identifier + +### Display Settings + +- `files`: ["README.md"] - Array of files where contributor information will be displayed +- `imageSize`: 100 - Size of contributor avatar images in pixels +- `contributorsPerLine`: 7 - Number of contributors to display per line in the README +- `linkToUsage`: true - Whether to include a link to all-contributors usage information + +### Git Integration + +- `commit`: false - Whether to automatically commit changes (disabled for manual control) +- `commitConvention`: "conventional" - Commit message convention to follow + +### Contributors Array + +Each contributor object contains: + +- `login`: GitHub username/handle +- `name`: Display name for the contributor +- `avatar_url`: GitHub profile avatar image URL +- `profile`: Link to contributor's GitHub profile +- `contributions`: Array of contribution types + +## Contribution Types Used in This Project + +### LightSpeedWP Organization + +The organization contributes across all areas of the project: + +- `ideas`: Contributed ideas and concepts for WordPress documentation standards +- `fundingFinding`: Helped find funding for the project development +- `projectManagement`: Managed project tasks and coordination +- `business`: Handled business aspects and strategy +- `code`: Wrote automation scripts and tooling +- `design`: Created design systems and documentation structure +- `doc`: Wrote comprehensive WordPress documentation and guides +- `infra`: Set up and maintained development infrastructure +- `maintenance`: Ongoing project maintenance and updates +- `test`: Wrote tests and performed quality assurance + +## Usage Commands + +- `npm run contributors:add` - Add a new contributor +- `npm run contributors:generate` - Generate contributor table +- `npm run contributors:check` - Check contributor configuration diff --git a/.coderabbit.yml b/.coderabbit.yml index c47ca9f..2f84b43 100644 --- a/.coderabbit.yml +++ b/.coderabbit.yml @@ -1,16 +1,131 @@ +# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json +# Configuration tailored for wp-docs (WordPress block/theme documentation & Copilot asset library) +# Reference: https://docs.coderabbit.ai/guides/configure-coderabbit/ + +# Set review language to UK English to match repository documentation standards (see AGENTS.md) +language: "en-GB" # Align with AGENTS.md (UK English for documentation); code identifiers remain unchanged. + +# Disable early access features for stable, consistent review experience +early_access: false + reviews: + profile: "balanced" + request_changes_workflow: true + high_level_summary: true + review_status: true + collapse_walkthrough: false + poem: false + # Exclude paths that don't need review (dependencies, build outputs, temporary agent files) + path_filters: + - "!**/node_modules/**" + - "!**/dist/**" + - "!**/.agent_work/**" + auto_review: + enabled: true + drafts: false + ignore_title_keywords: + - "WIP" + - "DO NOT MERGE" + base_branches: + - main + - develop + - docs/* + - instructions/* + - prompts/* + - chatmodes/* + - chore/* + + # Targeted instruction sets per path path_instructions: - path: "**/*.md" instructions: | - Review the Markdown documentation for: - - Clarity and conciseness of explanations - - Consistent formatting and heading structure - - Proper use of code blocks and inline code - - Correct spelling, grammar, and punctuation - - Accurate and up-to-date technical information - - Useful internal and external links - - Well-organized sections and logical flow - - Additional context: - - The repository contains documentation focused on block theme and block plug-in development topics for WordPress and related technologies. - - Please ensure that technical docs are developer-friendly, accurate, and up-to-date. + Documentation Review Focus: + - One sentence per line where practical (improves diff clarity) + - Clear hierarchy (h1 once; meaningful h2/h3 order; no level skipping) + - UK English spelling (colour, organisation, behaviour) except in code/API examples + - Accessibility & inclusivity of examples (avoid ableist / gendered assumptions) + - Accuracy: WordPress APIs, Gutenberg block concepts, theme.json tokens + - Remove duplication; prefer canonical cross-links instead of copy/paste + - Ensure internal links resolve (relative paths) & external links use HTTPS + - For long lists: consider tables for scanability; ensure no trailing placeholder text + - For code samples: prefer minimal, runnable, security-conscious examples (escaping, sanitisation) + Reject only for: factual errors, unsafe patterns, structural incoherence—not minor stylistic opinions. + - path: ".github/instructions/*.instructions.md" + instructions: | + Instruction Files Review: + - Front matter: description (single quoted), applyTo pattern present + - Scope clarity: no overlap with other instruction files without rationale + - Consistency with existing security/a11y/performance standards + - Avoid redundancy—reference shared guidance instead of restating + - Ensure examples use current WordPress APIs & escaping (esc_html, esc_attr, wp_kses_post) + - Flag ambiguous or aspirational language (“probably”, “maybe”)—prefer imperative clarity + - path: ".github/prompts/*.prompts.md" + instructions: | + Prompt Files Review: + - Front matter: description, mode (agent|ask), encourage model & tools fields + - Name reflects task (lowercase-hyphen) & not a duplicate of existing prompt + - Body: single authoritative task pattern; avoid multi‑persona drift + - No hidden side effects (should not instruct destructive repository changes unless clearly labelled) + - Ensure migration: legacy .prompt.md references removed or marked deprecated + - path: ".github/chatmodes/*.chatmodes.md" + instructions: | + Chat Modes Review: + - Front matter includes description & optional tools list sized to stated purpose + - No overlap with consolidated modes (e.g., planning, accessibility) unless extension is explicit + - Deprecation blocks present for replaced variants (deprecated: true, replacement: ) + - Check persona scope creep (avoid over-promising omnipotent abilities) + - Security: discourage broad autonomous destructive behaviour + - path: ".github/scripts/*.js" + instructions: | + Script Review: + - Focus: correctness, idempotence, error handling, path safety + - Avoid unnecessary fs sync loops in hot paths (acceptable for small repo generation tasks) + - Ensure backward compatibility notes retained during migrations + - Prefer descriptive constant names over comments explaining magic values + - path: ".github/workflows/*.yml" + instructions: | + Workflow Review: + - Principle of least privilege (scoped permissions: contents: read where possible) + - Caching correctness (restore-keys order, hash input stability) + - No plaintext secrets; encourage use of secrets store + - Matrix limits reasonable; avoid unbounded strategy expansion + - path: "**/*.php" + instructions: | + PHP Review (WordPress Focus): + - Input sanitisation (sanitize_text_field, esc_url_raw, absint) & output escaping (esc_html/esc_attr) applied appropriately + - Capability checks (current_user_can) instead of role names + - Nonces for state‑changing actions; verify with check_admin_referer + - Avoid direct access to superglobals in templates—wrap in helper functions + - Performance: no unbounded WP_Query loops; leverage caching where justified + - path: "**/*.js" + instructions: | + JavaScript Review: + - No direct innerHTML with unsanitised content + - Avoid large synchronous operations blocking main thread + - Prefer WP packages (@wordpress/*) over reinventing editor APIs + - Accessibility: focus management on dynamic components; ARIA only if semantics missing + - path: "**/*.py" + instructions: | + Python Review: + - Note: _, pgettext, ngettext variations are globally defined (ignore undefined warnings) + - Prefer pathlib & context managers; parameterise any SQL; no shell string concatenation + - path: "user_docs/en/changes.md" + instructions: | + Changelog Review: + - Each entry links an issue or PR (#123) and optional @author handle + - Group multi-line entries under a bullet with sub-items + - No future tense for released changes; use past or imperative for unreleased + + reviewers: + - default + +tools: + github-checks: + enabled: true + ruff: + enabled: true + markdownlint: + enabled: true + +chat: + auto_reply: true diff --git a/.editorconfig b/.editorconfig index 25ca37f..b6d681a 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,21 +1,21 @@ # EditorConfig is awesome: https://EditorConfig.org -# top-most EditorConfig file +# Indicate this is the top-most EditorConfig file (stop searching parent directories) root = true -# All files +# Universal settings for all files in the repository [*] -indent_style = space -indent_size = 2 -end_of_line = lf -charset = utf-8 -trim_trailing_whitespace = true -insert_final_newline = true +indent_style = space # Use spaces instead of tabs for consistency +indent_size = 2 # Standard 2-space indentation for most files +end_of_line = lf # Unix-style line endings for cross-platform compatibility +charset = utf-8 # UTF-8 encoding for international character support +trim_trailing_whitespace = true # Remove trailing whitespace to keep files clean +insert_final_newline = true # Ensure files end with a newline for POSIX compliance -# Markdown files +# Markdown files - preserve trailing spaces (used for line breaks) and allow long lines [*.md] -trim_trailing_whitespace = false -max_line_length = off +trim_trailing_whitespace = false # Preserve intentional trailing spaces for markdown line breaks +max_line_length = off # Allow long lines for readability (handled by markdownlint) # JSON files [*.json] diff --git a/.eslintrc.config.md b/.eslintrc.config.md new file mode 100644 index 0000000..c78478b --- /dev/null +++ b/.eslintrc.config.md @@ -0,0 +1,51 @@ +# ESLint Configuration Documentation + +This document explains the ESLint configuration in `.eslintrc.json` for the wp-docs repository. + +## Configuration Overview + +The ESLint configuration ensures consistent JavaScript code quality across all script files in the repository, including automation scripts and any WordPress-related JavaScript. + +## Configuration Breakdown + +### Environment Settings (`env`) +- **`browser: true`** - Enable browser globals (window, document, etc.) for client-side scripts +- **`es2022: true`** - Enable ES2022 features and syntax +- **`node: true`** - Enable Node.js globals and scope for automation scripts + +### Extended Configurations (`extends`) +- **`eslint:recommended`** - Standard ESLint recommended rules for code quality +- **`prettier`** - Disable ESLint formatting rules that conflict with Prettier formatting + +### Parser Options (`parserOptions`) +- **`ecmaVersion: "latest"`** - Use the latest ECMAScript version for modern syntax +- **`sourceType: "module"`** - Enable ES6 modules (import/export syntax) + +### Custom Rules (`rules`) +- **`indent: ["error", 4]`** - Enforce 4-space indentation (matches Prettier config) +- **`linebreak-style: ["error", "unix"]`** - Enforce Unix line endings (LF) +- **`quotes: ["error", "single"]`** - Enforce single quotes for strings +- **`semi: ["error", "always"]`** - Require semicolons for statement termination +- **`no-console: "warn"`** - Warn about console statements (acceptable in scripts) +- **`no-unused-vars: "warn"`** - Warn about unused variables (helps catch errors) + +### Ignore Patterns (`ignorePatterns`) +Files and directories excluded from linting: +- **`node_modules/`** - Third-party dependencies +- **`dist/`** - Build output directory +- **`build/`** - Alternative build output directory + +## Usage + +The configuration is automatically applied when running: +- `npm run lint:js` - Lint JavaScript files +- `npm run lint:fix` - Auto-fix linting issues where possible + +## WordPress Development Notes + +This configuration is designed to work well with: +- WordPress Gutenberg block development (modern JavaScript) +- Node.js automation scripts in `.github/scripts/` +- Build tools and development utilities + +The rules align with WordPress JavaScript coding standards while allowing modern ES6+ syntax for development tooling. diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000..9602b58 --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,24 @@ +{ + "env": { + "browser": true, + "es2022": true, + "node": true + }, + "extends": [ + "eslint:recommended", + "prettier" + ], + "parserOptions": { + "ecmaVersion": "latest", + "sourceType": "module" + }, + "rules": { + "indent": ["error", 4], + "linebreak-style": ["error", "unix"], + "quotes": ["error", "single"], + "semi": ["error", "always"], + "no-console": "warn", + "no-unused-vars": "warn" + }, + "ignorePatterns": ["node_modules/", "dist/", "build/"] +} diff --git a/.gitattributes b/.gitattributes index d85c21c..d4b514f 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,7 +1,7 @@ -# Set default behavior to automatically normalize line endings. +# Set default behavior to automatically normalize line endings for cross-platform compatibility * text=auto eol=lf -# Explicitly declare text files to be normalized and converted to native line endings on checkout. +# Explicitly declare text files to ensure consistent line ending handling across platforms *.md text eol=lf *.txt text eol=lf *.js text eol=lf @@ -14,11 +14,11 @@ *.ts text eol=lf *.sh text eol=lf -# Windows-specific files that should retain CRLF line endings +# Windows-specific script files that require CRLF line endings to function properly *.bat text eol=crlf *.cmd text eol=crlf -# Binary files that should not be modified +# Binary files that should not have line ending conversion or text processing applied *.png binary *.jpg binary *.jpeg binary diff --git a/.gitattributes.config.md b/.gitattributes.config.md new file mode 100644 index 0000000..ebb854d --- /dev/null +++ b/.gitattributes.config.md @@ -0,0 +1,64 @@ +# Git Attributes Configuration Documentation + +This file documents the Git attributes configuration in `.gitattributes` for the wp-docs repository. + +## Purpose + +The `.gitattributes` file ensures consistent file handling across different platforms and Git operations, particularly for line endings and binary file detection. + +## Configuration Breakdown + +### Default Behavior +``` +* text=auto eol=lf +``` +- Applies to all files by default +- `text=auto` - Let Git automatically detect text files and apply line ending normalization +- `eol=lf` - Use Unix line endings (LF) in both repository and working directory + +### Text File Declarations +These file types are explicitly marked as text files to ensure proper handling: + +- **`*.md`** - Markdown documentation files +- **`*.txt`** - Plain text files +- **`*.js`** - JavaScript source files +- **`*.json`** - JSON configuration and data files +- **`*.yml, *.yaml`** - YAML configuration files +- **`*.html`** - HTML template files +- **`*.css, *.scss`** - CSS and Sass stylesheet files +- **`*.ts`** - TypeScript source files +- **`*.sh`** - Shell script files + +### Windows-Specific Files +``` +*.bat text eol=crlf +*.cmd text eol=crlf +``` +Windows batch and command files require CRLF line endings to function properly on Windows systems. + +### Binary Files +These file types are marked as binary to prevent Git from attempting text processing: + +- **Image files**: `*.png`, `*.jpg`, `*.jpeg`, `*.gif`, `*.ico` +- **Archive files**: `*.zip` +- **Document files**: `*.pdf` + +## Benefits + +1. **Cross-Platform Consistency** - Ensures consistent line endings across Windows, macOS, and Linux +2. **Repository Cleanliness** - Prevents line ending differences from showing up in diffs +3. **Build Reliability** - Ensures scripts and configuration files work consistently across environments +4. **Binary File Safety** - Prevents corruption of binary files by text processing + +## Troubleshooting + +If you encounter line ending issues: +1. Run `git config core.autocrlf false` to disable automatic conversion +2. Re-clone the repository to get clean line endings +3. Ensure your editor respects `.editorconfig` settings + +## Related Files + +- `.editorconfig` - Editor-specific line ending and formatting rules +- `.gitignore` - Files to exclude from version control +- `package.json` - Scripts that may be affected by line ending consistency diff --git a/.github/pull_request_template.md b/.github/PULL_REQUEST_TEMPLATES/pull_request_template.md similarity index 90% rename from .github/pull_request_template.md rename to .github/PULL_REQUEST_TEMPLATES/pull_request_template.md index 051de1a..9d11c26 100644 --- a/.github/pull_request_template.md +++ b/.github/PULL_REQUEST_TEMPLATES/pull_request_template.md @@ -1,6 +1,24 @@ --- name: Pull Request about: Standard template for all pull requests +title: '[Type] Concise title describing the change' +labels: '' +assignees: '' +milestones: '' +branches: '' +projects: '' +body: | + --- + name: Pull Request + about: Standard template for all pull requests + title: '[Type] Concise title describing the change' + labels: '' + assignees: '' + milestones: '' + branches: '' + projects: '' + body: | + --- --- ## Description diff --git a/.github/agents/AGENT.md.template b/.github/agents/AGENT.md.template deleted file mode 100644 index 278ea75..0000000 --- a/.github/agents/AGENT.md.template +++ /dev/null @@ -1,15 +0,0 @@ - -# Directory Agent Template (Relocated) - -The canonical template now lives at: - -`/.github/agents/AGENT.md.template` - -Reason: All agent-related assets (personas + scaffolding) are co-located under `.github/agents/` for discoverability and governance cohesion. - -If you need to create a new directory specialisation: -1. Copy the template from the path above to `/AGENT.md`. -2. Populate required sections (Scope, Objectives, Key Artefacts, Conventions, Playbooks, Quality Map, Anti-Patterns, Hooks, Open Questions, Change Log). -3. Keep file concise (~150 lines) and defer broad policy back to `AGENTS.md`. - -This stub remains to avoid broken references in historic commits or external links. diff --git a/.github/agents/README.md b/.github/agents/README.md index 34d565c..888fce3 100644 --- a/.github/agents/README.md +++ b/.github/agents/README.md @@ -1,32 +1,17 @@ -# Specialised Agents +# 🤖 WordPress-Focused Agents -This directory defines focused AI personas that extend the global contract (`../../AGENTS.md`). Each persona targets a narrow quality or domain concern to reduce cognitive load and improve review precision. +Specialized GitHub Copilot agents designed for WordPress development workflows, each focusing on specific domains like accessibility, performance, security, and block/theme development. +### How to Use WordPress Agents -| Persona | File | Primary Focus | Use When | -| -------------------------------------------- | -------------------------------------- | -------------------------------------------- | ------------------------------------------------ | -| Block Theme Optimiser | `block-theme-optimizer.agent.md` | Token coherence, CSS reduction, fluid scales | Editing `theme.json`, patterns, style variations | -| Accessibility Auditor | `accessibility-auditor.agent.md` | WCAG 2.2 semantics, focus, contrast intent | New interactive UI, navigation, palette changes | -| Security Hardening Reviewer | `security-hardening-reviewer.agent.md` | Capabilities, nonces, sanitisation/escaping | REST routes, form handlers, DB queries | -| Performance & Core Web Vitals Profiler | `performance-profiler.agent.md` | Asset payload, queries, render path | Asset additions, perf regressions suspected | -| Internationalisation & Localisation Reviewer | `i18n-l10n-reviewer.agent.md` | Translation readiness, domains, placeholders | Adding / refactoring strings or formats | +**To Reference:** +- Each agent defines specialized behavior for WordPress development domains +- Agents complement the global behavioral contract defined in [`AGENTS.md`](../../AGENTS.md) +- Use agents as reference for specialized WordPress workflows and best practices -## Quick Invocation Pattern +**To Create New Agents:** +- Copy the [`TEMPLATE.agent.md`](TEMPLATE.agent.md) file to create new specialized agents +- Follow the WordPress-focused guidelines and YAML frontmatter structure +- Ensure new agents align with WordPress coding standards and security practices -When invoking a persona, briefly describe: scope, key files, constraints, desired output form. Example: - -"Act as the Accessibility Auditor. Review the diff touching navigation pattern and theme.json palette additions. Identify semantic, contrast, and focus concerns; provide prioritised remediation steps." - -## Authoring New Personas - -1. Confirm scope not already covered. -2. Use `AGENT.md` structure specification. -3. Keep content concise, link instead of copying policy. -4. Add to table above and update CHANGELOG with rationale. - -## Roadmap (Deferred Personas) - -- REST API Contract Validator -- Testing & CI Strategy Advisor -- Design Token Governance Curator (if Block Theme scope grows) - -All new content should adopt UK English spelling going forward (see forthcoming language style guidance). +| Agent | Domain | Description | +| ----- | ------ | ----------- | diff --git a/.github/agents/TEMPLATE.agents.md b/.github/agents/TEMPLATE.agents.md new file mode 100644 index 0000000..6f6b89a --- /dev/null +++ b/.github/agents/TEMPLATE.agents.md @@ -0,0 +1,134 @@ +--- +# YAML Frontmatter Template - Copy this structure for new agent files +# Title: Keep under 50 characters, descriptive but concise +name: 'example-agent-name' +# Description: 150-200 characters, specific and actionable. Describe WHAT the agent does, WHO it helps, and WHEN to use it +description: 'WordPress-focused agent that helps developers create accessible, performant block themes by auditing code, optimizing theme.json, and ensuring WCAG compliance' +# Tools: List the specific tools this agent needs to function effectively +tools: + [ + 'read_file', + 'replace_string_in_file', + 'semantic_search', + 'grep_search', + 'run_in_terminal', + ] +# Model: Specify the recommended model for optimal performance +model: 'gpt-4o' +# License: Always use GPL-3.0-or-later for WordPress projects +license: 'GPL-3.0-or-later' +# WordPress Domain: Choose primary WordPress domain this agent serves +domain: 'block-themes' # Options: wp-core, block-themes, plugin-hardening, performance, accessibility, security, i18n +# Stability: Indicate maturity level +stability: 'stable' # Options: experimental, incubating, stable +--- + +# [Agent Name] (50 chars max) + +**Purpose**: One sentence describing the agent's primary function and value proposition. (80-100 characters) + +## When to Use This Agent + +- Specific scenario 1 (when working with theme.json files) +- Specific scenario 2 (when auditing accessibility compliance) +- Specific scenario 3 (when optimizing performance) + +## What This Agent Does + +### Core Responsibilities (3-5 key areas) + +- **Primary Function**: Detailed explanation of main capability +- **Secondary Function**: Supporting capability that adds value +- **Quality Assurance**: How it ensures WordPress standards compliance + +### WordPress Integration Points + +- Specific WordPress APIs, hooks, or patterns it works with +- Theme.json, block.json, or other WordPress-specific file formats +- WordPress coding standards and best practices it enforces + +## Domain Expertise + +### WordPress Knowledge Areas + +- List specific WordPress concepts (blocks, themes, plugins, etc.) +- Relevant WordPress APIs and development patterns +- Integration with WordPress ecosystem tools + +### Technical Skills + +- Code review and analysis capabilities +- File manipulation and optimization techniques +- Testing and validation approaches + +## Common Tasks & Workflows + +1. **Task Category 1**: Step-by-step workflow description +2. **Task Category 2**: Another common workflow +3. **Task Category 3**: Additional workflow pattern + +## Quality Standards + +- WCAG 2.2 AA compliance requirements +- WordPress coding standards adherence +- Performance optimization criteria +- Security best practices integration + +## Anti-Patterns to Avoid + +- ❌ **Specific anti-pattern**: Why it's problematic and what to do instead +- ❌ **Another anti-pattern**: Clear explanation of the issue +- ❌ **Third anti-pattern**: Alternative approach recommendation + +## Escalation & Handoff Criteria + +**Escalate to human review when**: + +- Complex architectural decisions required +- Breaking changes to existing functionality +- Multi-team coordination needed + +**Hand off to other agents when**: + +- Security vulnerabilities discovered → security-hardening-reviewer +- Performance issues identified → performance-profiler +- Accessibility concerns found → accessibility-auditor + +## Integration with Other Agents + +- **Complementary agents**: Which agents work well together +- **Workflow coordination**: How to sequence agent interactions +- **Shared outputs**: Common deliverables between agents + +--- + +## Template Guidelines + +### Title Requirements + +- Maximum 50 characters +- Use title case +- Be specific about WordPress focus +- Avoid generic terms like "Expert" or "Specialist" + +### Description Requirements + +- 150-200 characters optimal length +- Answer: WHAT does it do, WHO does it help, WHEN to use it +- Include specific WordPress terminology +- Be actionable and concrete + +### Content Structure + +- Keep total file length under 400 lines +- Use consistent heading hierarchy +- Include specific WordPress examples +- Reference existing documentation rather than duplicating +- Focus on WordPress ecosystem integration + +### WordPress Alignment + +- Always consider WordPress coding standards +- Reference theme.json, block.json, and WordPress APIs +- Include accessibility and performance considerations +- Maintain GPL-3.0-or-later licensing consistency diff --git a/.github/agents/accessibility-auditor.agent.md b/.github/agents/accessibility-auditor.agent.md deleted file mode 100644 index 88b25ee..0000000 --- a/.github/agents/accessibility-auditor.agent.md +++ /dev/null @@ -1,61 +0,0 @@ ---- -name: 'Accessibility Auditor' -description: 'Assess changes for WCAG 2.2 AA alignment, ensuring semantic, perceivable, operable, and robust outcomes' -tools: ['read_file', 'replace_string_in_file', 'semantic_search'] -license: 'GPL-3.0' ---- - -# Accessibility Auditor - -Purpose: Assess changes for WCAG 2.2 AA alignment, ensuring semantic, perceivable, operable, and robust outcomes. - -## When to Use - -- New or modified patterns, templates, navigation, or interactive components -- theme.json palette / typography adjustments impacting contrast or hierarchy -- Introduction of custom blocks or block style variations - -## Inputs Expected - -- Diff of relevant files (patterns, templates, block styles) -- `theme.json` changes (palette, typography) -- Any proposed ARIA usage / interactive scripts - -## Responsibilities - -- Verify semantic element usage and heading hierarchy -- Confirm keyboard focus order and visibility is preserved -- Check colour contrast intent (token selection); note ratios for follow-up -- Identify unnecessary ARIA (prefer native semantics) -- Ensure interactive controls have textual or programmatic labels -- Flag reliance on colour alone for state/meaning - -## Quality Focus - -- Accessibility (primary) -- Usability & clarity (supporting) -- Maintainability (avoid gratuitous ARIA) - -## Common Tasks - -- Recommend replacing generic
with semantic landmarks -- Suggest adding skip link or improving focus outline -- Remove redundant role attributes -- Surface insufficient contrast tokens for design/token review -- Ensure form elements have associated labels or descriptions - -## Anti-Patterns - -- Adding roles to native elements (e.g., role="button" on + + `, `
}> + + + ); +} + +// Conditionally load heavy libraries +async function loadChartLibrary() { + const { Chart } = await import('chart.js'); + return Chart; +} +``` + +### Error Boundaries & Error Handling +```jsx +import { Component } from '@wordpress/element'; + +class ErrorBoundary extends Component { + constructor(props) { + super(props); + this.state = { hasError: false, error: null }; + } + + static getDerivedStateFromError(error) { + return { hasError: true, error }; + } + + componentDidCatch(error, errorInfo) { + console.error('Block error:', error, errorInfo); + + // Report error to logging service if available + if (window.errorReporting) { + window.errorReporting.captureException(error); + } + } + + render() { + if (this.state.hasError) { + return ( +
+

{__('Something went wrong', 'textdomain')}

+

{__('This block encountered an error and could not be displayed.', 'textdomain')}

+
+ ); + } + + return this.props.children; + } +} +``` + +### Accessibility in JavaScript +```javascript +// Focus management for modals and dropdowns +function trapFocus(element) { + const focusableElements = element.querySelectorAll( + 'button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])' + ); + + const firstFocusable = focusableElements[0]; + const lastFocusable = focusableElements[focusableElements.length - 1]; + + element.addEventListener('keydown', (e) => { + if (e.key === 'Tab') { + if (e.shiftKey) { + if (document.activeElement === firstFocusable) { + e.preventDefault(); + lastFocusable.focus(); + } + } else { + if (document.activeElement === lastFocusable) { + e.preventDefault(); + firstFocusable.focus(); + } + } + } + + if (e.key === 'Escape') { + closeModal(); + } + }); +} + +// Announce dynamic content changes to screen readers +function announceToScreenReader(message) { + const announcement = document.createElement('div'); + announcement.setAttribute('aria-live', 'polite'); + announcement.setAttribute('aria-atomic', 'true'); + announcement.className = 'screen-reader-text'; + announcement.textContent = message; + + document.body.appendChild(announcement); + + setTimeout(() => { + document.body.removeChild(announcement); + }, 1000); +} +``` + +Always prioritize performance, accessibility, and maintainability. Use modern JavaScript features appropriately while ensuring compatibility with the target WordPress and browser versions. Follow React and WordPress coding standards for consistent, reliable code. \ No newline at end of file diff --git a/.github/instructions/php-wordpress.instructions.md b/.github/instructions/php-wordpress.instructions.md new file mode 100644 index 0000000..e005cee --- /dev/null +++ b/.github/instructions/php-wordpress.instructions.md @@ -0,0 +1,341 @@ +--- +applyTo: "**/*.php" +description: "PHP coding standards for WordPress development - security, performance, and WordPress API best practices" +license: "GPL-3.0-or-later" +--- + +# PHP Development Guidelines for WordPress + +## WordPress Coding Standards (WPCS) + +### File Structure & Organization +- Use proper WordPress file headers with plugin/theme information +- Organize code into logical directories (`/inc`, `/lib`, `/admin`, `/public`) +- Follow WordPress naming conventions for files and directories +- Use kebab-case for file names, snake_case for function names +- Prefix all functions, classes, and constants to avoid conflicts + +### Security First +```php +// Always escape output +echo esc_html( $user_input ); +echo esc_attr( $attribute_value ); +echo esc_url( $url ); +echo wp_kses_post( $rich_content ); + +// Sanitize input immediately +$clean_text = sanitize_text_field( $_POST['user_text'] ); +$clean_email = sanitize_email( $_POST['user_email'] ); +$clean_url = esc_url_raw( $_POST['user_url'] ); + +// Use nonces for all forms and AJAX +wp_nonce_field( 'my_action_nonce', 'my_nonce' ); +if ( ! wp_verify_nonce( $_POST['my_nonce'], 'my_action_nonce' ) ) { + wp_die( 'Security check failed' ); +} + +// Check user capabilities +if ( ! current_user_can( 'edit_posts' ) ) { + wp_die( 'Insufficient permissions' ); +} +``` + +### Database Operations +```php +// Always use $wpdb->prepare() for custom queries +global $wpdb; +$results = $wpdb->get_results( $wpdb->prepare( + "SELECT * FROM {$wpdb->prefix}custom_table WHERE user_id = %d AND status = %s", + $user_id, + $status +) ); + +// Prefer WordPress functions over direct queries +$posts = get_posts( array( + 'post_type' => 'custom_type', + 'meta_query' => array( + array( + 'key' => 'custom_field', + 'value' => $value, + 'compare' => '=' + ) + ) +) ); +``` + +### Internationalization (i18n) +```php +// Use proper text domain consistently +__( 'Text to translate', 'textdomain' ); +_e( 'Text to echo', 'textdomain' ); +_x( 'Text', 'Context for translators', 'textdomain' ); +_n( 'Singular', 'Plural', $count, 'textdomain' ); + +// For JavaScript strings +wp_localize_script( 'my-script', 'myL10n', array( + 'ajaxurl' => admin_url( 'admin-ajax.php' ), + 'nonce' => wp_create_nonce( 'my_ajax_nonce' ), + 'strings' => array( + 'loading' => __( 'Loading...', 'textdomain' ), + 'error' => __( 'An error occurred', 'textdomain' ), + ) +) ); +``` + +### Error Handling & Logging +```php +// Use WordPress error handling +if ( is_wp_error( $result ) ) { + error_log( 'Custom plugin error: ' . $result->get_error_message() ); + return false; +} + +// Debug logging (only when WP_DEBUG is true) +if ( WP_DEBUG ) { + error_log( 'Debug info: ' . print_r( $debug_data, true ) ); +} + +// User-friendly error messages +wp_die( + __( 'Something went wrong. Please try again later.', 'textdomain' ), + __( 'Error', 'textdomain' ), + array( 'response' => 500 ) +); +``` + +### Performance Best Practices +```php +// Cache expensive operations +$cache_key = 'my_plugin_data_' . md5( serialize( $args ) ); +$data = get_transient( $cache_key ); + +if ( false === $data ) { + $data = expensive_operation( $args ); + set_transient( $cache_key, $data, HOUR_IN_SECONDS ); +} + +// Use WordPress object cache +$data = wp_cache_get( $cache_key, 'my_plugin_group' ); +if ( false === $data ) { + $data = expensive_operation(); + wp_cache_set( $cache_key, $data, 'my_plugin_group', 3600 ); +} + +// Minimize database queries +// Bad: N+1 query problem +foreach ( $posts as $post ) { + $meta = get_post_meta( $post->ID, 'custom_field', true ); +} + +// Good: Single query with meta_query or get_posts with meta +$posts = get_posts( array( + 'meta_key' => 'custom_field', + 'meta_value' => $value +) ); +``` + +### WordPress Hooks & Filters +```php +// Use appropriate hook priorities +add_action( 'init', 'my_plugin_init', 10 ); +add_filter( 'the_content', 'my_content_filter', 20 ); + +// Remove hooks safely +remove_action( 'wp_head', 'wp_generator' ); +remove_filter( 'the_content', 'wpautop' ); + +// Conditional hook registration +if ( is_admin() ) { + add_action( 'admin_init', 'my_admin_init' ); +} else { + add_action( 'wp_enqueue_scripts', 'my_frontend_scripts' ); +} + +// Hook into plugin activation/deactivation +register_activation_hook( __FILE__, 'my_plugin_activate' ); +register_deactivation_hook( __FILE__, 'my_plugin_deactivate' ); +``` + +### Class Structure & OOP +```php +/** + * Main plugin class + */ +class My_Plugin { + + /** + * Plugin instance + */ + private static $instance = null; + + /** + * Get plugin instance (singleton pattern) + */ + public static function get_instance() { + if ( null === self::$instance ) { + self::$instance = new self(); + } + return self::$instance; + } + + /** + * Constructor - private for singleton + */ + private function __construct() { + add_action( 'init', array( $this, 'init' ) ); + } + + /** + * Initialize plugin + */ + public function init() { + // Plugin initialization code + if ( is_admin() ) { + $this->init_admin(); + } else { + $this->init_frontend(); + } + } + + /** + * Initialize admin functionality + */ + private function init_admin() { + // Admin-specific code + } + + /** + * Initialize frontend functionality + */ + private function init_frontend() { + // Frontend-specific code + } +} + +// Initialize plugin +My_Plugin::get_instance(); +``` + +### Block Development (PHP) +```php +/** + * Register custom block type + */ +function my_plugin_register_blocks() { + // Register block from block.json + register_block_type( __DIR__ . '/build/blocks/custom-block' ); + + // Register block with PHP configuration + register_block_type( 'my-plugin/custom-block', array( + 'render_callback' => 'my_plugin_render_custom_block', + 'attributes' => array( + 'content' => array( + 'type' => 'string', + 'default' => '' + ), + 'alignment' => array( + 'type' => 'string', + 'default' => 'left' + ) + ), + 'supports' => array( + 'anchor' => true, + 'spacing' => array( + 'margin' => true, + 'padding' => true + ) + ) + ) ); +} +add_action( 'init', 'my_plugin_register_blocks' ); + +/** + * Render callback for custom block + */ +function my_plugin_render_custom_block( $attributes, $content, $block ) { + $wrapper_attributes = get_block_wrapper_attributes( array( + 'class' => 'my-custom-block align' . esc_attr( $attributes['alignment'] ) + ) ); + + return sprintf( + '

%2$s

', + $wrapper_attributes, + esc_html( $attributes['content'] ) + ); +} +``` + +### REST API Integration +```php +/** + * Register custom REST API endpoint + */ +function my_plugin_register_rest_routes() { + register_rest_route( 'my-plugin/v1', '/custom-endpoint', array( + 'methods' => WP_REST_Server::READABLE, + 'callback' => 'my_plugin_rest_callback', + 'permission_callback' => 'my_plugin_rest_permission_check', + 'args' => array( + 'id' => array( + 'required' => true, + 'validate_callback' => function( $param, $request, $key ) { + return is_numeric( $param ); + }, + 'sanitize_callback' => 'absint' + ) + ) + ) ); +} +add_action( 'rest_api_init', 'my_plugin_register_rest_routes' ); + +/** + * REST API callback + */ +function my_plugin_rest_callback( $request ) { + $id = $request->get_param( 'id' ); + + // Process request + $data = my_plugin_get_data( $id ); + + if ( empty( $data ) ) { + return new WP_Error( 'no_data', 'No data found', array( 'status' => 404 ) ); + } + + return rest_ensure_response( $data ); +} + +/** + * Permission check for REST API + */ +function my_plugin_rest_permission_check() { + return current_user_can( 'read' ); +} +``` + +## Code Quality Standards + +### Documentation +- Use proper PHPDoc blocks for all functions, classes, and methods +- Document parameter types, return values, and exceptions +- Include @since tags for version tracking +- Provide clear descriptions and examples where helpful + +### Testing +- Write unit tests for all public methods using PHPUnit +- Test edge cases and error conditions +- Mock WordPress functions in tests +- Aim for high code coverage + +### Performance +- Use appropriate WordPress caching mechanisms +- Minimize database queries and optimize existing ones +- Load scripts and styles conditionally +- Use WordPress coding standards for better performance + +### Compatibility +- Support the minimum required WordPress version +- Test with PHP versions from minimum to latest +- Ensure compatibility with common plugins and themes +- Follow semantic versioning for releases + +Always prioritize security, performance, and maintainability over convenience. When in doubt, follow WordPress Core's implementation patterns and coding standards. \ No newline at end of file diff --git a/.github/instructions/theme-json.instructions.md b/.github/instructions/theme-json.instructions.md new file mode 100644 index 0000000..4572f9b --- /dev/null +++ b/.github/instructions/theme-json.instructions.md @@ -0,0 +1,524 @@ +--- +applyTo: "**/theme.json" +description: "Theme.json configuration standards for WordPress block themes - design systems, tokens, and global styles" +license: "GPL-3.0-or-later" +--- + +# Theme.json Configuration Guidelines + +## Structure & Organization + +### Version and Core Settings +```json +{ + "$schema": "https://schemas.wp.org/trunk/theme.json", + "version": 3, + "title": "Theme Name", + "description": "A brief description of the theme's design approach", + "settings": { + "appearanceTools": true, + "useRootPaddingAwareAlignments": true, + "layout": { + "contentSize": "620px", + "wideSize": "1200px" + } + } +} +``` + +### Typography System +```json +{ + "settings": { + "typography": { + "dropCap": false, + "fluid": true, + "fontStyle": true, + "fontWeight": true, + "letterSpacing": true, + "lineHeight": true, + "textDecoration": true, + "textTransform": true, + "writingMode": false, + "fontFamilies": [ + { + "fontFamily": "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif", + "name": "System Font", + "slug": "system" + }, + { + "fontFamily": "Georgia, serif", + "name": "Serif", + "slug": "serif" + }, + { + "fontFamily": "'Courier New', Courier, monospace", + "name": "Monospace", + "slug": "monospace" + } + ], + "fontSizes": [ + { + "name": "Small", + "size": "0.875rem", + "slug": "small", + "fluid": { + "min": "0.875rem", + "max": "1rem" + } + }, + { + "name": "Medium", + "size": "1rem", + "slug": "medium", + "fluid": false + }, + { + "name": "Large", + "size": "1.25rem", + "slug": "large", + "fluid": { + "min": "1.125rem", + "max": "1.5rem" + } + }, + { + "name": "Extra Large", + "size": "2rem", + "slug": "x-large", + "fluid": { + "min": "1.75rem", + "max": "2.5rem" + } + }, + { + "name": "Huge", + "size": "3rem", + "slug": "xx-large", + "fluid": { + "min": "2.25rem", + "max": "4rem" + } + } + ] + } + } +} +``` + +### Color System +```json +{ + "settings": { + "color": { + "custom": false, + "customDuotone": false, + "customGradient": false, + "defaultDuotones": false, + "defaultGradients": false, + "defaultPalette": false, + "duotone": [ + { + "colors": ["#000000", "#ffffff"], + "name": "Black and White", + "slug": "black-and-white" + } + ], + "gradients": [ + { + "gradient": "linear-gradient(135deg, var(--wp--preset--color--primary) 0%, var(--wp--preset--color--secondary) 100%)", + "name": "Primary to Secondary", + "slug": "primary-to-secondary" + } + ], + "palette": [ + { + "name": "Base", + "slug": "base", + "color": "#ffffff" + }, + { + "name": "Contrast", + "slug": "contrast", + "color": "#000000" + }, + { + "name": "Primary", + "slug": "primary", + "color": "#007cba" + }, + { + "name": "Secondary", + "slug": "secondary", + "color": "#006ba1" + }, + { + "name": "Tertiary", + "slug": "tertiary", + "color": "#f0f0f0" + } + ] + } + } +} +``` + +### Spacing System +```json +{ + "settings": { + "spacing": { + "customSpacingSize": false, + "spacingScale": { + "operator": "*", + "increment": 1.5, + "steps": 7, + "mediumStep": 1.5, + "unit": "rem" + }, + "spacingSizes": [ + { + "name": "2X-Small", + "size": "0.25rem", + "slug": "20" + }, + { + "name": "X-Small", + "size": "0.5rem", + "slug": "30" + }, + { + "name": "Small", + "size": "0.75rem", + "slug": "40" + }, + { + "name": "Medium", + "size": "1rem", + "slug": "50" + }, + { + "name": "Large", + "size": "1.5rem", + "slug": "60" + }, + { + "name": "X-Large", + "size": "2.25rem", + "slug": "70" + }, + { + "name": "2X-Large", + "size": "3.375rem", + "slug": "80" + } + ], + "units": ["px", "em", "rem", "vh", "vw", "%"] + } + } +} +``` + +### Custom Properties & CSS Variables +```json +{ + "settings": { + "custom": { + "spacing": { + "baseline": "1rem", + "gutter": "var(--wp--preset--spacing--50)" + }, + "typography": { + "lineHeight": { + "tight": "1.1", + "normal": "1.5", + "loose": "1.8" + } + }, + "effects": { + "shadow": { + "small": "0 1px 3px rgba(0, 0, 0, 0.12)", + "medium": "0 4px 6px rgba(0, 0, 0, 0.12)", + "large": "0 10px 25px rgba(0, 0, 0, 0.12)" + }, + "borderRadius": { + "small": "0.25rem", + "medium": "0.5rem", + "large": "1rem" + } + } + } + } +} +``` + +## Block-Specific Styling + +### Core Block Customization +```json +{ + "styles": { + "blocks": { + "core/button": { + "border": { + "radius": "var(--wp--custom--effects--border-radius--medium)" + }, + "spacing": { + "padding": { + "top": "var(--wp--preset--spacing--30)", + "right": "var(--wp--preset--spacing--50)", + "bottom": "var(--wp--preset--spacing--30)", + "left": "var(--wp--preset--spacing--50)" + } + }, + "typography": { + "fontWeight": "600", + "textTransform": "uppercase", + "letterSpacing": "0.05em" + }, + "variations": { + "outline": { + "border": { + "width": "2px", + "style": "solid", + "color": "var(--wp--preset--color--primary)" + }, + "color": { + "text": "var(--wp--preset--color--primary)", + "background": "transparent" + } + } + } + }, + "core/heading": { + "typography": { + "fontWeight": "700", + "lineHeight": "var(--wp--custom--typography--line-height--tight)" + }, + "elements": { + "link": { + "color": { + "text": "inherit" + }, + ":hover": { + "color": { + "text": "var(--wp--preset--color--primary)" + } + } + } + } + }, + "core/group": { + "spacing": { + "padding": "var(--wp--preset--spacing--50)" + } + }, + "core/columns": { + "spacing": { + "blockGap": "var(--wp--preset--spacing--60)" + } + } + } + } +} +``` + +### Element Styling +```json +{ + "styles": { + "elements": { + "link": { + "color": { + "text": "var(--wp--preset--color--primary)" + }, + "typography": { + "textDecoration": "underline" + }, + ":hover": { + "color": { + "text": "var(--wp--preset--color--secondary)" + }, + "typography": { + "textDecoration": "none" + } + }, + ":focus": { + "outline": { + "width": "2px", + "style": "solid", + "color": "var(--wp--preset--color--primary)", + "offset": "2px" + } + } + }, + "button": { + "border": { + "radius": "var(--wp--custom--effects--border-radius--medium)" + }, + "color": { + "background": "var(--wp--preset--color--primary)", + "text": "var(--wp--preset--color--base)" + }, + ":hover": { + "color": { + "background": "var(--wp--preset--color--secondary)" + } + }, + ":focus": { + "outline": { + "width": "2px", + "style": "solid", + "color": "var(--wp--preset--color--contrast)", + "offset": "2px" + } + } + }, + "h1": { + "typography": { + "fontSize": "var(--wp--preset--font-size--xx-large)", + "lineHeight": "var(--wp--custom--typography--line-height--tight)" + } + }, + "h2": { + "typography": { + "fontSize": "var(--wp--preset--font-size--x-large)" + } + }, + "h3": { + "typography": { + "fontSize": "var(--wp--preset--font-size--large)" + } + }, + "h4": { + "typography": { + "fontSize": "var(--wp--preset--font-size--medium)" + } + }, + "h5": { + "typography": { + "fontSize": "var(--wp--preset--font-size--small)" + } + }, + "h6": { + "typography": { + "fontSize": "var(--wp--preset--font-size--small)", + "fontWeight": "600" + } + } + } + } +} +``` + +## Advanced Features + +### Style Variations +```json +{ + "styles": [ + { + "name": "default", + "label": "Default", + "isDefault": true + }, + { + "name": "dark", + "label": "Dark", + "styles": { + "color": { + "background": "var(--wp--preset--color--contrast)", + "text": "var(--wp--preset--color--base)" + }, + "blocks": { + "core/button": { + "color": { + "background": "var(--wp--preset--color--base)", + "text": "var(--wp--preset--color--contrast)" + } + } + } + } + } + ] +} +``` + +### Template Part Areas +```json +{ + "templateParts": [ + { + "name": "header", + "title": "Header", + "area": "header" + }, + { + "name": "footer", + "title": "Footer", + "area": "footer" + }, + { + "name": "sidebar", + "title": "Sidebar", + "area": "uncategorized" + } + ] +} +``` + +### Custom Templates +```json +{ + "customTemplates": [ + { + "name": "page-landing", + "title": "Landing Page", + "postTypes": ["page"] + }, + { + "name": "single-portfolio", + "title": "Portfolio Item", + "postTypes": ["portfolio"] + } + ] +} +``` + +## Best Practices + +### Design Token Hierarchy +1. **Base tokens**: Core values (colors, spacing units) +2. **Semantic tokens**: Purpose-based (primary, secondary, error) +3. **Component tokens**: Block-specific values +4. **Context tokens**: Page or section-specific overrides + +### Performance Considerations +- Use CSS custom properties for runtime theme switching +- Minimize the number of font families and weights +- Leverage fluid typography for responsive design +- Use semantic color names rather than descriptive ones +- Keep gradients and duotones to essential variations only + +### Accessibility Standards +- Ensure minimum 4.5:1 contrast ratio for normal text +- Ensure minimum 3:1 contrast ratio for large text +- Provide sufficient spacing for touch targets (44px minimum) +- Use semantic color names that convey meaning +- Test with high contrast and reduced motion preferences + +### Maintainability +- Use consistent naming conventions for slugs +- Document color usage and design decisions +- Group related settings logically +- Use CSS custom properties for complex calculations +- Validate theme.json syntax regularly + +### Migration & Compatibility +- Use appropriate version number (2 or 3) +- Test with multiple WordPress versions +- Provide fallbacks for unsupported features +- Document breaking changes in updates +- Consider child theme compatibility + +Always validate your theme.json file against the WordPress schema and test thoroughly across different devices, browsers, and accessibility tools. \ No newline at end of file diff --git a/.github/instructions/wordpress-inline-documentation.instructions.md b/.github/instructions/wordpress-inline-documentation.instructions.md new file mode 100644 index 0000000..08cd52c --- /dev/null +++ b/.github/instructions/wordpress-inline-documentation.instructions.md @@ -0,0 +1,330 @@ +--- +description: 'WordPress inline documentation standards for PHP, JavaScript, and general code documentation following official WordPress coding standards' +applyTo: '**/*.php,**/*.js,**/*.jsx,**/*.ts,**/*.tsx' +license: 'GPL-3.0' +stability: 'stable' +tags: ['wp-core', 'documentation', 'comments', 'php', 'javascript'] +domain: 'wp-core' +--- + +# WordPress Inline Documentation Standards + +Follow WordPress official inline documentation standards for consistent, helpful code documentation. + +## Core Principles + +- **Write for developers**: Document for future maintainers, including yourself +- **Document the WHY, not the WHAT**: Explain purpose, context, and reasoning +- **Use proper DocBlock format**: Follow WordPress-specific formatting for consistency +- **Be concise but complete**: Provide necessary information without redundancy +- **Update when code changes**: Keep documentation synchronized with implementation + +## PHP Documentation (DocBlocks) + +### Function Documentation + +```php +/** + * Summary line - brief description of what the function does. + * + * Description paragraph providing more detail about the function's purpose, + * behavior, and any important implementation notes. + * + * @since 1.0.0 + * + * @param string $param1 Description of the first parameter. + * @param array $param2 { + * Optional. Description of array parameter. + * + * @type string $key1 Description of array key. + * @type int $key2 Description of another key. + * } + * @param bool $param3 Optional. Description with default. Default false. + * + * @return string|bool Return description. False on failure. + */ +function my_function( $param1, $param2 = array(), $param3 = false ) { + // Implementation +} +``` + +### Class Documentation + +```php +/** + * Brief description of the class. + * + * Longer description explaining the class purpose, usage patterns, + * and any important implementation details. + * + * @since 1.0.0 + */ +class My_Class { + + /** + * Property description. + * + * @since 1.0.0 + * @var string + */ + public $property; + + /** + * Constructor method description. + * + * @since 1.0.0 + * + * @param string $param Description. + */ + public function __construct( $param ) { + // Implementation + } +} +``` + +### Hook Documentation + +```php +/** + * Filters the example value before processing. + * + * @since 1.0.0 + * + * @param mixed $value The value to filter. + * @param string $context Context information. + */ +$filtered_value = apply_filters( 'my_filter_name', $value, $context ); + +/** + * Fires when an example action occurs. + * + * @since 1.0.0 + * + * @param int $post_id The post ID. + * @param string $status The post status. + */ +do_action( 'my_action_name', $post_id, $status ); +``` + +## JavaScript Documentation (JSDoc) + +### Function Documentation + +```javascript +/** + * Brief description of what the function does. + * + * Longer description explaining the function's purpose and usage. + * + * @since 1.0.0 + * + * @param {string} param1 - Description of the parameter. + * @param {Object} param2 - Object parameter description. + * @param {string} param2.key1 - Description of object property. + * @param {number} param2.key2 - Description of another property. + * @param {boolean} [param3=false] - Optional parameter with default. + * + * @return {string|null} Return description. Null on failure. + */ +function myFunction( param1, param2, param3 = false ) { + // Implementation +} +``` + +### Class Documentation + +```javascript +/** + * Brief description of the class. + * + * Longer description explaining class purpose and usage patterns. + * + * @since 1.0.0 + * + * @class + */ +class MyClass { + + /** + * Constructor description. + * + * @since 1.0.0 + * + * @param {string} param - Parameter description. + */ + constructor( param ) { + /** + * Property description. + * + * @type {string} + */ + this.property = param; + } + + /** + * Method description. + * + * @since 1.0.0 + * + * @param {number} value - Input value. + * @return {boolean} Success status. + */ + myMethod( value ) { + // Implementation + } +} +``` + +### Block Editor Components + +```javascript +/** + * Custom block component for displaying featured content. + * + * Renders a customizable content block with title, description, + * and optional image for the WordPress block editor. + * + * @since 1.0.0 + * + * @param {Object} props - Component props. + * @param {string} props.title - Block title. + * @param {string} props.content - Block content. + * @param {Object} props.attributes - Block attributes. + * @param {Function} props.setAttributes - Function to update attributes. + * + * @return {WPElement} Element to render. + */ +const MyBlockComponent = ( { title, content, attributes, setAttributes } ) => { + // Implementation +}; +``` + +## WordPress-Specific Guidelines + +### Required Tags + +- `@since` - Always include version when item was introduced +- `@param` - Document all parameters with type and description +- `@return` - Document return value type and meaning +- `@see` - Reference related functions or documentation +- `@link` - Link to external documentation +- `@todo` - Mark incomplete implementations +- `@deprecated` - Mark deprecated functions with replacement info + +### Security Documentation + +```php +/** + * Sanitizes user input for database storage. + * + * SECURITY: This function must be used for all user-provided data + * before database insertion to prevent SQL injection attacks. + * + * @since 1.0.0 + * + * @param string $input Raw user input. + * @return string Sanitized input safe for database. + */ +function sanitize_user_input( $input ) { + return sanitize_text_field( $input ); +} +``` + +### Performance Notes + +```php +/** + * Retrieves posts with caching for performance. + * + * PERFORMANCE: Results are cached for 1 hour to reduce database queries. + * Cache is automatically invalidated when posts are modified. + * + * @since 1.0.0 + * + * @param array $args Query arguments. + * @return array Array of post objects. + */ +function get_cached_posts( $args ) { + // Implementation with caching +} +``` + +### Accessibility Documentation + +```php +/** + * Renders accessible navigation menu. + * + * ACCESSIBILITY: Includes proper ARIA labels and keyboard navigation + * support following WCAG 2.1 AA guidelines. + * + * @since 1.0.0 + * + * @param array $menu_items Array of menu items. + * @return string HTML markup for accessible menu. + */ +function render_accessible_menu( $menu_items ) { + // Implementation with ARIA support +} +``` + +## Internationalization Documentation + +```php +/** + * Gets localized error message. + * + * @since 1.0.0 + * + * @param string $error_code The error code identifier. + * @return string Translated error message. + */ +function get_error_message( $error_code ) { + return __( 'Default error message', 'textdomain' ); +} +``` + +## Common Mistakes to Avoid + +- **Don't state the obvious**: Avoid comments that simply restate the code +- **Don't use @author tags**: WordPress core doesn't use individual author attribution +- **Don't duplicate information**: If parameter types are obvious from type hints, focus on behavior +- **Don't forget @since**: Always include version information +- **Don't use generic descriptions**: Be specific about what the function actually does + +## Documentation for WordPress APIs + +### REST API Endpoints + +```php +/** + * Retrieves posts via REST API endpoint. + * + * @since 1.0.0 + * + * @param WP_REST_Request $request Full details about the request. + * @return WP_REST_Response|WP_Error Response object on success, WP_Error on failure. + */ +function handle_posts_endpoint( $request ) { + // Implementation +} +``` + +### Custom Post Types + +```php +/** + * Registers the 'portfolio' custom post type. + * + * Creates a custom post type for portfolio items with public frontend + * visibility and REST API support for the block editor. + * + * @since 1.0.0 + */ +function register_portfolio_post_type() { + // Implementation +} +``` + +Remember: Good inline documentation is an investment in future maintainability and developer experience. + diff --git a/.github/linting/yamllint.yml b/.github/linting/yamllint.yml new file mode 100644 index 0000000..a9dc38e --- /dev/null +++ b/.github/linting/yamllint.yml @@ -0,0 +1,15 @@ +extends: default + +rules: + line-length: + max: 100 + level: warning + document-start: disable + truthy: + allowed-values: ['true', 'false', 'on', 'off'] + comments: + min-spaces-from-content: 1 + indentation: + spaces: 2 + key-duplicates: enable + new-line-at-end-of-file: enable diff --git a/.github/prompts/README.prompts.md b/.github/prompts/README.prompts.md index 6076d4a..65a0a35 100644 --- a/.github/prompts/README.prompts.md +++ b/.github/prompts/README.prompts.md @@ -1,7 +1,6 @@ # 🎯 Reusable Prompts Ready-to-use prompt templates for specific development scenarios and tasks, defining prompt text with a specific mode, model, and available set of tools. - ### How to Use Reusable Prompts **To Install:** @@ -13,4 +12,75 @@ Ready-to-use prompt templates for specific development scenarios and tasks, defi - Run the `Chat: Run Prompt` command from the Command Palette - Hit the run button while you have a prompt file open in VS Code -_No entries found yet._ \ No newline at end of file +| Title | Description | +| ----- | ----------- | +| [README](README.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2FREADME.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2FREADME.prompts.md) | | +| [A11y Review](a11y-review.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fa11y-review.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fa11y-review.prompts.md) | | +| [Accessibility Audit & Testing](accessibility-audit.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Faccessibility-audit.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Faccessibility-audit.prompts.md) | Perform comprehensive accessibility audit for WordPress websites, themes, and plugins using WCAG 2.1 AA standards | +| [Accessibility Review Prompt](accessibility-review.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Faccessibility-review.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Faccessibility-review.prompts.md) | Comprehensive accessibility review guidelines for any LightSpeed WordPress project | +| [AI Prompt Engineering Safety Review & Improvement](ai-prompt-engineering-safety-review.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fai-prompt-engineering-safety-review.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fai-prompt-engineering-safety-review.prompts.md) | Comprehensive AI prompt engineering safety review and improvement prompt. Analyzes prompts for safety, bias, security vulnerabilities, and effectiveness while providing detailed improvement recommendations with extensive frameworks, testing methodologies, and educational content. | +| [Comprehensive Project Architecture Blueprint Generator](architecture-blueprint-generator.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Farchitecture-blueprint-generator.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Farchitecture-blueprint-generator.prompts.md) | Comprehensive project architecture blueprint generator that analyzes codebases to create detailed architectural documentation. Automatically detects technology stacks and architectural patterns, generates visual diagrams, documents implementation patterns, and provides extensible blueprints for maintaining architectural consistency and guiding new development. | +| [Boost Prompt](boost-prompt.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fboost-prompt.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fboost-prompt.prompts.md) | Interactive prompt refinement workflow: interrogates scope, deliverables, constraints; copies final markdown to clipboard; never writes code. Requires the Joyride extension. | +| [Epic Architecture Specification Prompt](breakdown-epic-arch.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-epic-arch.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-epic-arch.prompts.md) | Prompt for creating the high-level technical architecture for an Epic, based on a Product Requirements Document. | +| [Epic Product Requirements Document (PRD) Prompt](breakdown-epic-pm.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-epic-pm.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-epic-pm.prompts.md) | Prompt for creating an Epic Product Requirements Document (PRD) for a new epic. This PRD will be used as input for generating a technical architecture specification. | +| [Feature Implementation Plan Prompt](breakdown-feature-implementation.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-feature-implementation.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-feature-implementation.prompts.md) | Prompt for creating detailed feature implementation plans, following Epoch monorepo structure. | +| [Feature PRD Prompt](breakdown-feature-prd.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-feature-prd.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-feature-prd.prompts.md) | Prompt for creating Product Requirements Documents (PRDs) for new features, based on an Epic. | +| [GitHub Issue Planning & Project Automation Prompt](breakdown-plan.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-plan.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-plan.prompts.md) | Issue Planning and Automation prompt that generates comprehensive project plans with Epic > Feature > Story/Enabler > Test hierarchy, dependencies, priorities, and automated tracking. | +| [Test Planning & Quality Assurance Prompt](breakdown-test.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-test.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-test.prompts.md) | Test Planning and Quality Assurance prompt that generates comprehensive test strategies, task breakdowns, and quality validation plans for GitHub projects. | +| [[Prompt] Junior Dev Code Review](code-review.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcode-review.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcode-review.prompts.md) | Guidelines for providing feedback to junior developers in any LightSpeed WordPress project. | +| [Comment Code Generate A Tutorial](comment-code-generate-a-tutorial.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcomment-code-generate-a-tutorial.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcomment-code-generate-a-tutorial.prompts.md) | Transform this Python script into a polished, beginner-friendly project by refactoring the code, adding clear instructional comments, and generating a complete markdown tutorial. | +| [Configure Theme.json Design System](configure-theme-json.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fconfigure-theme-json.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fconfigure-theme-json.prompts.md) | Configure theme.json with design tokens, typography scales, color palettes, and global styles for WordPress block themes | +| [Copilot Instructions Blueprint Generator](copilot-instructions-blueprint-generator.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcopilot-instructions-blueprint-generator.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcopilot-instructions-blueprint-generator.prompts.md) | Technology-agnostic blueprint generator for creating comprehensive copilot-instructions.md files that guide GitHub Copilot to produce code consistent with project standards, architecture patterns, and exact technology versions by analyzing existing codebase patterns and avoiding assumptions. | +| [Create high‑quality AGENTS.md file](create-agentsmd.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-agentsmd.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-agentsmd.prompts.md) | Prompt for generating an AGENTS.md file for a repository | +| [Create Architectural Decision Record](create-architectural-decision-record.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-architectural-decision-record.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-architectural-decision-record.prompts.md) | Create an Architectural Decision Record (ADR) document for AI-optimized decision documentation. | +| [Create Block Patterns](create-block-patterns.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-block-patterns.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-block-patterns.prompts.md) | Create accessible, semantic block patterns with proper HTML structure, ARIA attributes, and theme.json integration | +| [Create GitHub Actions Workflow Specification](create-github-action-workflow-specification.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-github-action-workflow-specification.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-github-action-workflow-specification.prompts.md) | Create a formal specification for an existing GitHub Actions CI/CD workflow, optimized for AI consumption and workflow maintenance. | +| [Create GitHub Issue from Specification](create-github-issue-feature-from-specification.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-github-issue-feature-from-specification.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-github-issue-feature-from-specification.prompts.md) | Create GitHub Issue for feature request from specification file using feature_request.yml template. | +| [Create GitHub Issue from Implementation Plan](create-github-issues-feature-from-implementation-plan.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-github-issues-feature-from-implementation-plan.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-github-issues-feature-from-implementation-plan.prompts.md) | Create GitHub Issues from implementation plan phases using feature_request.yml or chore_request.yml templates. | +| [Create GitHub Issues for Unmet Specification Requirements](create-github-issues-for-unmet-specification-requirements.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-github-issues-for-unmet-specification-requirements.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-github-issues-for-unmet-specification-requirements.prompts.md) | Create GitHub Issues for unimplemented requirements from specification files using feature_request.yml template. | +| [Create GitHub Pull Request from Specification](create-github-pull-request-from-specification.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-github-pull-request-from-specification.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-github-pull-request-from-specification.prompts.md) | Create GitHub Pull Request for feature request from specification file using pull_request_template.md template. | +| [Create Gutenberg Block](create-gutenberg-block.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-gutenberg-block.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-gutenberg-block.prompts.md) | Scaffold a complete Gutenberg block with block.json, React components, PHP registration, and styles | +| [Create Implementation Plan](create-implementation-plan.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-implementation-plan.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-implementation-plan.prompts.md) | Create a new implementation plan file for new features, refactoring existing code or upgrading packages, design, architecture or infrastructure. | +| [Create LLMs.txt File from Repository Structure](create-llms.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-llms.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-llms.prompts.md) | Create an llms.txt file from scratch based on repository structure following the llms.txt specification at https://llmstxt.org/ | +| [Generate Standard OO Component Documentation](create-oo-component-documentation.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-oo-component-documentation.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-oo-component-documentation.prompts.md) | Create comprehensive, standardized documentation for object-oriented components following industry best practices and architectural documentation standards. | +| [Create Readme](create-readme.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-readme.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-readme.prompts.md) | Create a README.md file for the project | +| [Create Specification](create-specification.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-specification.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-specification.prompts.md) | Create a new specification file for the solution, optimized for Generative AI consumption. | +| [Create Technical Spike Document](create-technical-spike.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-technical-spike.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fcreate-technical-spike.prompts.md) | Create time-boxed technical spike documents for researching and resolving critical development decisions before implementation. | +| [Microsoft 365 Declarative Agents Development Kit](declarative-agents.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fdeclarative-agents.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fdeclarative-agents.prompts.md) | Complete development kit for Microsoft 365 Copilot declarative agents with three comprehensive workflows (basic, advanced, validation), TypeSpec support, and Microsoft 365 Agents Toolkit integration | +| [Diátaxis Documentation Expert](documentation-writer.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fdocumentation-writer.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fdocumentation-writer.prompts.md) | Diátaxis Documentation Expert. An expert technical writer specializing in creating high-quality software documentation, guided by the principles and structure of the Diátaxis technical documentation authoring framework. | +| [EditorConfig Expert](editorconfig.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Feditorconfig.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Feditorconfig.prompts.md) | Generates a comprehensive and best-practice-oriented .editorconfig file based on project analysis and user preferences. | +| [Act Informed: First understand together with the human, then do](first-ask.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Ffirst-ask.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Ffirst-ask.prompts.md) | Interactive, input-tool powered, task refinement workflow: interrogates scope, deliverables, constraints before carrying out the task; Requires the Joyride extension. | +| [Fix Lint](fix-lint.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Ffix-lint.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Ffix-lint.prompts.md) | | +| [Project Folder Structure Blueprint Generator](folder-structure-blueprint-generator.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Ffolder-structure-blueprint-generator.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Ffolder-structure-blueprint-generator.prompts.md) | Comprehensive technology-agnostic prompt for analyzing and documenting project folder structures. Auto-detects project types (.NET, Java, React, Angular, Python, Node.js, Flutter), generates detailed blueprints with visualization options, naming conventions, file placement patterns, and extension templates for maintaining consistent code organization across diverse technology stacks. | +| [Product Manager Assistant: Feature Identification and Specification](gen-specs-as-issues.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fgen-specs-as-issues.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fgen-specs-as-issues.prompts.md) | This workflow guides you through a systematic approach to identify missing features, prioritize them, and create detailed specifications for implementation. | +| [Generate Block](generate-block.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fgenerate-block.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fgenerate-block.prompts.md) | | +| [Migration and Code Evolution Instructions Generator](generate-custom-instructions-from-codebase.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fgenerate-custom-instructions-from-codebase.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fgenerate-custom-instructions-from-codebase.prompts.md) | Migration and code evolution instructions generator for GitHub Copilot. Analyzes differences between two project versions (branches, commits, or releases) to create precise instructions allowing Copilot to maintain consistency during technology migrations, major refactoring, or framework version upgrades. | +| [Git Flow Branch Creator](git-flow-branch-creator.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fgit-flow-branch-creator.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fgit-flow-branch-creator.prompts.md) | Intelligent Git Flow branch creator that analyzes git status/diff and creates appropriate branches following the nvie Git Flow branching model. | +| [Javascript Typescript Jest](javascript-typescript-jest.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fjavascript-typescript-jest.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fjavascript-typescript-jest.prompts.md) | Best practices for writing JavaScript/TypeScript tests using Jest, including mocking strategies, test structure, and common patterns. | +| [MkDocs AI Translator](mkdocs-translations.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fmkdocs-translations.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fmkdocs-translations.prompts.md) | Generate a language translation for a mkdocs documentation stack. | +| [Multi Stage Dockerfile](multi-stage-dockerfile.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fmulti-stage-dockerfile.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fmulti-stage-dockerfile.prompts.md) | Create optimized multi-stage Dockerfiles for any language or framework | +| [My Issues](my-issues.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fmy-issues.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fmy-issues.prompts.md) | List my issues in the current repository | +| [My Pull Requests](my-pull-requests.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fmy-pull-requests.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fmy-pull-requests.prompts.md) | List my pull requests in the current repository | +| [Next Intl Add Language](next-intl-add-language.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fnext-intl-add-language.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fnext-intl-add-language.prompts.md) | Add new language to a Next.js + next-intl application | +| [[Prompt] Pattern Generation](pattern-generation.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fpattern-generation.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fpattern-generation.prompts.md) | Template for creating new WordPress block patterns in any LightSpeed project. | +| [Automating Filling in a Form with Playwright MCP](playwright-automation-fill-in-form.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-automation-fill-in-form.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-automation-fill-in-form.prompts.md) | Automate filling in a form using Playwright MCP | +| [Website Exploration for Testing](playwright-explore-website.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-explore-website.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-explore-website.prompts.md) | Website exploration for testing using Playwright MCP | +| [Test Generation with Playwright MCP](playwright-generate-test.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-generate-test.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-generate-test.prompts.md) | Generate a Playwright test based on a scenario using Playwright MCP | +| [Project Workflow Documentation Generator](project-workflow-analysis-blueprint-generator.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fproject-workflow-analysis-blueprint-generator.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fproject-workflow-analysis-blueprint-generator.prompts.md) | Comprehensive technology-agnostic prompt generator for documenting end-to-end application workflows. Automatically detects project architecture patterns, technology stacks, and data flow patterns to generate detailed implementation blueprints covering entry points, service layers, data access, error handling, and testing approaches across multiple technologies including .NET, Java/Spring, React, and microservices architectures. | +| [Professional Prompt Builder](prompt-builder.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fprompt-builder.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fprompt-builder.prompts.md) | Guide users through creating high-quality GitHub Copilot prompts with proper structure, tools, and best practices. | +| [README Generator Prompt](readme-blueprint-generator.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Freadme-blueprint-generator.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Freadme-blueprint-generator.prompts.md) | Intelligent README.md generation prompt that analyzes project documentation structure and creates comprehensive repository documentation. Scans .github/copilot directory files and copilot-instructions.md to extract project information, technology stack, architecture, development workflow, coding standards, and testing approaches while generating well-structured markdown documentation with proper formatting, cross-references, and developer-focused content. | +| [Refactor To Bem](refactor-to-bem.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Frefactor-to-bem.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Frefactor-to-bem.prompts.md) | | +| [Interactive Programming Nudge](remember-interactive-programming.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fremember-interactive-programming.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fremember-interactive-programming.prompts.md) | Reminds the agent that it is an interactive programmer. Works great in Clojure when Copilot has access to the REPL (probably via Backseat Driver). Will work with any system that has a live REPL that the agent can use. Adapt the prompt with any specific reminders in your workflow and/or workspace. | +| [Memory Keeper](remember.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fremember.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fremember.prompts.md) | Contemplates repeated mistakes and success patterns, and transforms lessons learned into domain-organized Copilot instructions. Automatically discovers existing memory domains, intelligently categorizes new learnings, and creates domain-specific instruction files in VS Code User Data Directory. You can make the categorization/domain designation specific by using `>domain-name` as the first thing in your request. Like so: `/remember >domain-name lesson content here` | +| [Repository Analysis: [Repo Name]](repo-story-time.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Frepo-story-time.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Frepo-story-time.prompts.md) | Generate a comprehensive repository summary and narrative story from commit history | +| [Review And Refactor](review-and-refactor.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Freview-and-refactor.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Freview-and-refactor.prompts.md) | Review and refactor code in your project according to defined instructions | +| [Suggest Awesome GitHub Copilot Chatmodes](suggest-awesome-github-copilot-chatmodes.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-chatmodes.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-chatmodes.prompts.md) | Suggest relevant GitHub Copilot chatmode files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing chatmodes in this repository. | +| [Suggest Awesome GitHub Copilot Prompts](suggest-awesome-github-copilot-prompts.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompts.md) | Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository. | +| [Comprehensive Technology Stack Blueprint Generator](technology-stack-blueprint-generator.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Ftechnology-stack-blueprint-generator.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Ftechnology-stack-blueprint-generator.prompts.md) | Comprehensive technology stack blueprint generator that analyzes codebases to create detailed architectural documentation. Automatically detects technology stacks, programming languages, and implementation patterns across multiple platforms (.NET, Java, JavaScript, React, Python). Generates configurable blueprints with version information, licensing details, usage patterns, coding conventions, and visual diagrams. Provides implementation-ready templates and maintains architectural consistency for guided development. | +| [Update Azure Verified Modules in Bicep Files](update-avm-modules-in-bicep.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fupdate-avm-modules-in-bicep.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fupdate-avm-modules-in-bicep.prompts.md) | Update Azure Verified Modules (AVM) to latest versions in Bicep files. | +| [Update Implementation Plan](update-implementation-plan.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fupdate-implementation-plan.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fupdate-implementation-plan.prompts.md) | Update an existing implementation plan file with new or update requirements to provide new features, refactoring existing code or upgrading packages, design, architecture or infrastructure. | +| [Update LLMs.txt File](update-llms.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fupdate-llms.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fupdate-llms.prompts.md) | Update the llms.txt file in the root folder to reflect changes in documentation or specifications following the llms.txt specification at https://llmstxt.org/ | +| [Update Markdown File Index](update-markdown-file-index.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fupdate-markdown-file-index.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fupdate-markdown-file-index.prompts.md) | Update a markdown file section with an index/table of files from a specified folder. | +| [Update Standard OO Component Documentation](update-oo-component-documentation.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fupdate-oo-component-documentation.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fupdate-oo-component-documentation.prompts.md) | Update existing object-oriented component documentation following industry best practices and architectural documentation standards. | +| [Update Specification](update-specification.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fupdate-specification.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fupdate-specification.prompts.md) | Update an existing specification file for the solution, optimized for Generative AI consumption based on new requirements or updates to any existing code. | +| [Generate WordPress Inline Documentation](wordpress-inline-documentation-generator.prompts.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fwordpress-inline-documentation-generator.prompts.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fwordpress-inline-documentation-generator.prompts.md) | Generate WordPress-compliant inline documentation for PHP functions, classes, methods, and JavaScript components following official coding standards | diff --git a/.github/prompts/a11y-review.prompts.md b/.github/prompts/a11y-review.prompts.md new file mode 100644 index 0000000..7141029 --- /dev/null +++ b/.github/prompts/a11y-review.prompts.md @@ -0,0 +1,2 @@ +# Accessibility Review +Check focus, labels, contrast, traps, motion; list concrete fixes. diff --git a/.github/prompts/accessibility-audit.prompts.md b/.github/prompts/accessibility-audit.prompts.md new file mode 100644 index 0000000..8fe79eb --- /dev/null +++ b/.github/prompts/accessibility-audit.prompts.md @@ -0,0 +1,276 @@ +--- +description: "Perform comprehensive accessibility audit for WordPress websites, themes, and plugins using WCAG 2.1 AA standards" +mode: "ask" +license: "GPL-3.0-or-later" +--- + +# Accessibility Audit & Testing + +Conduct a thorough accessibility assessment of WordPress websites, themes, or plugins to ensure WCAG 2.1 AA compliance and inclusive user experience for people with disabilities. + +## Audit Scope & Methodology + +**Assessment Areas:** +- **Perceivable**: Information presentation and user interface visibility +- **Operable**: User interface components and navigation functionality +- **Understandable**: Information clarity and predictable functionality +- **Robust**: Content compatibility with assistive technologies + +**Testing Approach:** +- **Automated testing** with tools and scanners +- **Manual testing** with keyboard and assistive technology +- **User testing** with people who use assistive technology +- **Code review** for semantic HTML and ARIA implementation + +## Automated Testing Tools + +### Primary Scanning Tools +- **axe-core DevTools**: Browser extension for comprehensive scanning +- **WAVE (Web Accessibility Evaluation Tool)**: Visual feedback tool +- **Lighthouse**: Performance and accessibility auditing +- **Pa11y**: Command-line accessibility testing +- **Accessibility Insights**: Microsoft's testing platform + +### WordPress-Specific Tools +- **WP Accessibility Plugin**: WordPress accessibility features +- **Accessibility Checker**: WordPress plugin for content auditing +- **Theme Check**: WordPress theme accessibility validation +- **Plugin Check**: WordPress plugin accessibility assessment + +## Manual Testing Procedures + +### Keyboard Navigation Testing +``` +Test Procedure: +1. Use only Tab, Shift+Tab, Enter, Space, Arrow keys +2. Verify all interactive elements are reachable +3. Check logical tab order throughout the page +4. Ensure no keyboard traps exist +5. Verify skip links function correctly +6. Test form navigation and submission +7. Check modal dialog focus management +``` + +### Screen Reader Testing +``` +Testing with NVDA (Windows): +1. Navigate by headings (H key) +2. Navigate by links (K key) +3. Navigate by landmarks (D key) +4. Test forms mode functionality +5. Verify image alt text readings +6. Check table header associations +7. Test live region announcements + +Testing with VoiceOver (macOS): +1. Use VO+CMD+H for headings +2. Use VO+CMD+L for links +3. Use VO+CMD+J for form controls +4. Test rotor navigation +5. Verify spoken feedback quality +6. Check gesture navigation on mobile +``` + +### Visual Testing +``` +Color and Contrast: +1. Check contrast ratios (4.5:1 normal, 3:1 large text) +2. Test with color blindness simulators +3. Verify content works without color +4. Test high contrast mode compatibility + +Zoom and Magnification: +1. Test 200% zoom functionality +2. Check content reflow and readability +3. Verify no horizontal scrolling at 320px width +4. Test with screen magnification software +``` + +## Code Review Checklist + +### HTML Semantic Structure +```html + +

Page Title

+

Section Title

+

Subsection Title

+

Another Section

+ + +
+