@ruaruababa/vibe-kit 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (462) hide show
  1. package/CATALOG.md +317 -0
  2. package/README.md +121 -0
  3. package/aliases.json +65 -0
  4. package/bin/vibe.js +2 -0
  5. package/bundles.json +265 -0
  6. package/catalog.json +1560 -0
  7. package/dist/antigravity-skills/bin/cli.js +438 -0
  8. package/dist/antigravity-skills/lib/skill-utils.js +158 -0
  9. package/dist/antigravity-skills/scripts/build-catalog.js +305 -0
  10. package/dist/antigravity-skills/scripts/normalize-frontmatter.js +144 -0
  11. package/dist/antigravity-skills/scripts/validate-skills.js +230 -0
  12. package/dist/bin/vibe.js +2 -0
  13. package/dist/dist/src/cli/index.js +26 -0
  14. package/dist/lib/skill-utils.js +158 -0
  15. package/dist/scripts/build-catalog.js +50 -0
  16. package/dist/scripts/normalize-frontmatter.js +144 -0
  17. package/dist/scripts/validate-skills.js +56 -0
  18. package/dist/src/cli/index.js +146 -0
  19. package/dist/src/types/index.js +13 -0
  20. package/dist/src/utils/fs.js +1 -0
  21. package/package.json +43 -0
  22. package/skills/accessibility-compliance-accessibility-audit/SKILL.md +42 -0
  23. package/skills/accessibility-compliance-accessibility-audit/resources/implementation-playbook.md +502 -0
  24. package/skills/agent-orchestration-improve-agent/SKILL.md +349 -0
  25. package/skills/agent-orchestration-multi-agent-optimize/SKILL.md +239 -0
  26. package/skills/agent-orchestrator/SKILL.md +24 -0
  27. package/skills/ai-engineer/SKILL.md +171 -0
  28. package/skills/airflow-dag-patterns/SKILL.md +41 -0
  29. package/skills/airflow-dag-patterns/resources/implementation-playbook.md +509 -0
  30. package/skills/angular-migration/SKILL.md +428 -0
  31. package/skills/anti-reversing-techniques/SKILL.md +42 -0
  32. package/skills/anti-reversing-techniques/resources/implementation-playbook.md +539 -0
  33. package/skills/api-design-principles/SKILL.md +37 -0
  34. package/skills/api-design-principles/assets/api-design-checklist.md +155 -0
  35. package/skills/api-design-principles/assets/rest-api-template.py +182 -0
  36. package/skills/api-design-principles/references/graphql-schema-design.md +583 -0
  37. package/skills/api-design-principles/references/rest-best-practices.md +408 -0
  38. package/skills/api-design-principles/resources/implementation-playbook.md +513 -0
  39. package/skills/api-documenter/SKILL.md +184 -0
  40. package/skills/api-testing-observability-api-mock/SKILL.md +46 -0
  41. package/skills/api-testing-observability-api-mock/resources/implementation-playbook.md +1327 -0
  42. package/skills/application-performance-performance-optimization/SKILL.md +154 -0
  43. package/skills/architect-review/SKILL.md +174 -0
  44. package/skills/architecture-decision-records/SKILL.md +441 -0
  45. package/skills/architecture-patterns/SKILL.md +37 -0
  46. package/skills/architecture-patterns/resources/implementation-playbook.md +479 -0
  47. package/skills/arm-cortex-expert/SKILL.md +306 -0
  48. package/skills/async-python-patterns/SKILL.md +39 -0
  49. package/skills/async-python-patterns/resources/implementation-playbook.md +678 -0
  50. package/skills/attack-tree-construction/SKILL.md +38 -0
  51. package/skills/attack-tree-construction/resources/implementation-playbook.md +671 -0
  52. package/skills/auth-implementation-patterns/SKILL.md +39 -0
  53. package/skills/auth-implementation-patterns/resources/implementation-playbook.md +618 -0
  54. package/skills/backend-architect/SKILL.md +333 -0
  55. package/skills/backend-development-feature-development/SKILL.md +180 -0
  56. package/skills/backend-security-coder/SKILL.md +156 -0
  57. package/skills/backtesting-frameworks/SKILL.md +39 -0
  58. package/skills/backtesting-frameworks/resources/implementation-playbook.md +647 -0
  59. package/skills/bash-defensive-patterns/SKILL.md +43 -0
  60. package/skills/bash-defensive-patterns/resources/implementation-playbook.md +517 -0
  61. package/skills/bash-pro/SKILL.md +310 -0
  62. package/skills/bats-testing-patterns/SKILL.md +34 -0
  63. package/skills/bats-testing-patterns/resources/implementation-playbook.md +614 -0
  64. package/skills/bazel-build-optimization/SKILL.md +397 -0
  65. package/skills/billing-automation/SKILL.md +42 -0
  66. package/skills/billing-automation/resources/implementation-playbook.md +544 -0
  67. package/skills/binary-analysis-patterns/SKILL.md +450 -0
  68. package/skills/blockchain-developer/SKILL.md +208 -0
  69. package/skills/business-analyst/SKILL.md +182 -0
  70. package/skills/c-pro/SKILL.md +56 -0
  71. package/skills/c4-architecture-c4-architecture/SKILL.md +389 -0
  72. package/skills/c4-code/SKILL.md +244 -0
  73. package/skills/c4-component/SKILL.md +153 -0
  74. package/skills/c4-container/SKILL.md +171 -0
  75. package/skills/c4-context/SKILL.md +150 -0
  76. package/skills/changelog-automation/SKILL.md +38 -0
  77. package/skills/changelog-automation/resources/implementation-playbook.md +538 -0
  78. package/skills/cicd-automation-workflow-automate/SKILL.md +51 -0
  79. package/skills/cicd-automation-workflow-automate/resources/implementation-playbook.md +1333 -0
  80. package/skills/clean-markdown/SKILL.md +23 -0
  81. package/skills/cloud-architect/SKILL.md +135 -0
  82. package/skills/code-documentation-code-explain/SKILL.md +46 -0
  83. package/skills/code-documentation-code-explain/resources/implementation-playbook.md +802 -0
  84. package/skills/code-documentation-doc-generate/SKILL.md +48 -0
  85. package/skills/code-documentation-doc-generate/resources/implementation-playbook.md +640 -0
  86. package/skills/code-refactoring-context-restore/SKILL.md +179 -0
  87. package/skills/code-refactoring-refactor-clean/SKILL.md +51 -0
  88. package/skills/code-refactoring-refactor-clean/resources/implementation-playbook.md +879 -0
  89. package/skills/code-refactoring-tech-debt/SKILL.md +386 -0
  90. package/skills/code-review-ai-ai-review/SKILL.md +450 -0
  91. package/skills/code-review-excellence/SKILL.md +40 -0
  92. package/skills/code-review-excellence/resources/implementation-playbook.md +515 -0
  93. package/skills/code-reviewer/SKILL.md +178 -0
  94. package/skills/codebase-cleanup-deps-audit/SKILL.md +51 -0
  95. package/skills/codebase-cleanup-deps-audit/resources/implementation-playbook.md +766 -0
  96. package/skills/codebase-cleanup-refactor-clean/SKILL.md +51 -0
  97. package/skills/codebase-cleanup-refactor-clean/resources/implementation-playbook.md +879 -0
  98. package/skills/codebase-cleanup-tech-debt/SKILL.md +386 -0
  99. package/skills/competitive-landscape/SKILL.md +34 -0
  100. package/skills/competitive-landscape/resources/implementation-playbook.md +494 -0
  101. package/skills/comprehensive-review-full-review/SKILL.md +146 -0
  102. package/skills/comprehensive-review-pr-enhance/SKILL.md +46 -0
  103. package/skills/comprehensive-review-pr-enhance/resources/implementation-playbook.md +691 -0
  104. package/skills/conductor-implement/SKILL.md +388 -0
  105. package/skills/conductor-manage/SKILL.md +39 -0
  106. package/skills/conductor-manage/resources/implementation-playbook.md +1120 -0
  107. package/skills/conductor-new-track/SKILL.md +433 -0
  108. package/skills/conductor-revert/SKILL.md +372 -0
  109. package/skills/conductor-setup/SKILL.md +426 -0
  110. package/skills/conductor-status/SKILL.md +338 -0
  111. package/skills/conductor-validator/SKILL.md +62 -0
  112. package/skills/content-marketer/SKILL.md +170 -0
  113. package/skills/context-driven-development/SKILL.md +400 -0
  114. package/skills/context-management-context-restore/SKILL.md +179 -0
  115. package/skills/context-management-context-save/SKILL.md +177 -0
  116. package/skills/context-manager/SKILL.md +185 -0
  117. package/skills/cost-optimization/SKILL.md +286 -0
  118. package/skills/cpp-pro/SKILL.md +59 -0
  119. package/skills/cqrs-implementation/SKILL.md +35 -0
  120. package/skills/cqrs-implementation/resources/implementation-playbook.md +540 -0
  121. package/skills/csharp-pro/SKILL.md +59 -0
  122. package/skills/customer-support/SKILL.md +170 -0
  123. package/skills/data-engineer/SKILL.md +224 -0
  124. package/skills/data-engineering-data-driven-feature/SKILL.md +182 -0
  125. package/skills/data-engineering-data-pipeline/SKILL.md +201 -0
  126. package/skills/data-quality-frameworks/SKILL.md +40 -0
  127. package/skills/data-quality-frameworks/resources/implementation-playbook.md +573 -0
  128. package/skills/data-scientist/SKILL.md +199 -0
  129. package/skills/data-storytelling/SKILL.md +465 -0
  130. package/skills/database-admin/SKILL.md +165 -0
  131. package/skills/database-architect/SKILL.md +268 -0
  132. package/skills/database-cloud-optimization-cost-optimize/SKILL.md +44 -0
  133. package/skills/database-cloud-optimization-cost-optimize/resources/implementation-playbook.md +1441 -0
  134. package/skills/database-migration/SKILL.md +436 -0
  135. package/skills/database-migrations-migration-observability/SKILL.md +420 -0
  136. package/skills/database-migrations-sql-migrations/SKILL.md +53 -0
  137. package/skills/database-migrations-sql-migrations/resources/implementation-playbook.md +499 -0
  138. package/skills/database-optimizer/SKILL.md +167 -0
  139. package/skills/dbt-transformation-patterns/SKILL.md +34 -0
  140. package/skills/dbt-transformation-patterns/resources/implementation-playbook.md +547 -0
  141. package/skills/debugger/SKILL.md +49 -0
  142. package/skills/debugging-strategies/SKILL.md +34 -0
  143. package/skills/debugging-strategies/resources/implementation-playbook.md +511 -0
  144. package/skills/debugging-toolkit-smart-debug/SKILL.md +197 -0
  145. package/skills/defi-protocol-templates/SKILL.md +466 -0
  146. package/skills/dependency-management-deps-audit/SKILL.md +44 -0
  147. package/skills/dependency-management-deps-audit/resources/implementation-playbook.md +766 -0
  148. package/skills/dependency-upgrade/SKILL.md +421 -0
  149. package/skills/deployment-engineer/SKILL.md +170 -0
  150. package/skills/deployment-pipeline-design/SKILL.md +371 -0
  151. package/skills/deployment-validation-config-validate/SKILL.md +496 -0
  152. package/skills/devops-troubleshooter/SKILL.md +161 -0
  153. package/skills/distributed-debugging-debug-trace/SKILL.md +44 -0
  154. package/skills/distributed-debugging-debug-trace/resources/implementation-playbook.md +1307 -0
  155. package/skills/distributed-tracing/SKILL.md +450 -0
  156. package/skills/django-pro/SKILL.md +180 -0
  157. package/skills/docs-architect/SKILL.md +98 -0
  158. package/skills/documentation-generation-doc-generate/SKILL.md +48 -0
  159. package/skills/documentation-generation-doc-generate/resources/implementation-playbook.md +640 -0
  160. package/skills/dotnet-architect/SKILL.md +197 -0
  161. package/skills/dotnet-backend-patterns/SKILL.md +37 -0
  162. package/skills/dotnet-backend-patterns/assets/repository-template.cs +523 -0
  163. package/skills/dotnet-backend-patterns/assets/service-template.cs +336 -0
  164. package/skills/dotnet-backend-patterns/references/dapper-patterns.md +544 -0
  165. package/skills/dotnet-backend-patterns/references/ef-core-best-practices.md +355 -0
  166. package/skills/dotnet-backend-patterns/resources/implementation-playbook.md +799 -0
  167. package/skills/dummy-skill/SKILL.md +5 -0
  168. package/skills/dx-optimizer/SKILL.md +83 -0
  169. package/skills/e2e-testing-patterns/SKILL.md +41 -0
  170. package/skills/e2e-testing-patterns/resources/implementation-playbook.md +531 -0
  171. package/skills/elixir-pro/SKILL.md +59 -0
  172. package/skills/embedding-strategies/SKILL.md +491 -0
  173. package/skills/employment-contract-templates/SKILL.md +39 -0
  174. package/skills/employment-contract-templates/resources/implementation-playbook.md +493 -0
  175. package/skills/error-debugging-error-analysis/SKILL.md +47 -0
  176. package/skills/error-debugging-error-analysis/resources/implementation-playbook.md +1143 -0
  177. package/skills/error-debugging-error-trace/SKILL.md +43 -0
  178. package/skills/error-debugging-error-trace/resources/implementation-playbook.md +1361 -0
  179. package/skills/error-debugging-multi-agent-review/SKILL.md +216 -0
  180. package/skills/error-detective/SKILL.md +53 -0
  181. package/skills/error-diagnostics-error-analysis/SKILL.md +47 -0
  182. package/skills/error-diagnostics-error-analysis/resources/implementation-playbook.md +1143 -0
  183. package/skills/error-diagnostics-error-trace/SKILL.md +48 -0
  184. package/skills/error-diagnostics-error-trace/resources/implementation-playbook.md +1371 -0
  185. package/skills/error-diagnostics-smart-debug/SKILL.md +197 -0
  186. package/skills/error-handling-patterns/SKILL.md +35 -0
  187. package/skills/error-handling-patterns/resources/implementation-playbook.md +635 -0
  188. package/skills/event-sourcing-architect/SKILL.md +58 -0
  189. package/skills/event-store-design/SKILL.md +449 -0
  190. package/skills/fastapi-pro/SKILL.md +192 -0
  191. package/skills/fastapi-templates/SKILL.md +32 -0
  192. package/skills/fastapi-templates/resources/implementation-playbook.md +566 -0
  193. package/skills/final-test/SKILL.md +5 -0
  194. package/skills/firmware-analyst/SKILL.md +320 -0
  195. package/skills/flutter-expert/SKILL.md +200 -0
  196. package/skills/framework-migration-code-migrate/SKILL.md +48 -0
  197. package/skills/framework-migration-code-migrate/resources/implementation-playbook.md +1052 -0
  198. package/skills/framework-migration-deps-upgrade/SKILL.md +48 -0
  199. package/skills/framework-migration-deps-upgrade/resources/implementation-playbook.md +755 -0
  200. package/skills/framework-migration-legacy-modernize/SKILL.md +132 -0
  201. package/skills/frontend-developer/SKILL.md +171 -0
  202. package/skills/frontend-mobile-development-component-scaffold/SKILL.md +403 -0
  203. package/skills/frontend-mobile-security-xss-scan/SKILL.md +322 -0
  204. package/skills/frontend-security-coder/SKILL.md +170 -0
  205. package/skills/full-stack-orchestration-full-stack-feature/SKILL.md +135 -0
  206. package/skills/gdpr-data-handling/SKILL.md +33 -0
  207. package/skills/gdpr-data-handling/resources/implementation-playbook.md +615 -0
  208. package/skills/git-advanced-workflows/SKILL.md +412 -0
  209. package/skills/git-pr-workflows-git-workflow/SKILL.md +140 -0
  210. package/skills/git-pr-workflows-onboard/SKILL.md +416 -0
  211. package/skills/git-pr-workflows-pr-enhance/SKILL.md +48 -0
  212. package/skills/git-pr-workflows-pr-enhance/resources/implementation-playbook.md +701 -0
  213. package/skills/github-actions-templates/SKILL.md +345 -0
  214. package/skills/gitlab-ci-patterns/SKILL.md +283 -0
  215. package/skills/gitops-workflow/SKILL.md +303 -0
  216. package/skills/gitops-workflow/references/argocd-setup.md +134 -0
  217. package/skills/gitops-workflow/references/sync-policies.md +131 -0
  218. package/skills/go-concurrency-patterns/SKILL.md +33 -0
  219. package/skills/go-concurrency-patterns/resources/implementation-playbook.md +654 -0
  220. package/skills/godot-gdscript-patterns/SKILL.md +33 -0
  221. package/skills/godot-gdscript-patterns/resources/implementation-playbook.md +804 -0
  222. package/skills/golang-pro/SKILL.md +179 -0
  223. package/skills/grafana-dashboards/SKILL.md +381 -0
  224. package/skills/graphql-architect/SKILL.md +182 -0
  225. package/skills/haskell-pro/SKILL.md +56 -0
  226. package/skills/helm-chart-scaffolding/SKILL.md +34 -0
  227. package/skills/helm-chart-scaffolding/assets/Chart.yaml.template +42 -0
  228. package/skills/helm-chart-scaffolding/assets/values.yaml.template +185 -0
  229. package/skills/helm-chart-scaffolding/references/chart-structure.md +500 -0
  230. package/skills/helm-chart-scaffolding/resources/implementation-playbook.md +543 -0
  231. package/skills/helm-chart-scaffolding/scripts/validate-chart.sh +244 -0
  232. package/skills/hr-pro/SKILL.md +126 -0
  233. package/skills/hybrid-cloud-architect/SKILL.md +168 -0
  234. package/skills/hybrid-cloud-networking/SKILL.md +238 -0
  235. package/skills/hybrid-search-implementation/SKILL.md +32 -0
  236. package/skills/hybrid-search-implementation/resources/implementation-playbook.md +567 -0
  237. package/skills/incident-responder/SKILL.md +213 -0
  238. package/skills/incident-response-incident-response/SKILL.md +168 -0
  239. package/skills/incident-response-smart-fix/SKILL.md +29 -0
  240. package/skills/incident-response-smart-fix/resources/implementation-playbook.md +838 -0
  241. package/skills/incident-runbook-templates/SKILL.md +395 -0
  242. package/skills/ios-developer/SKILL.md +219 -0
  243. package/skills/istio-traffic-management/SKILL.md +337 -0
  244. package/skills/java-pro/SKILL.md +177 -0
  245. package/skills/javascript-pro/SKILL.md +57 -0
  246. package/skills/javascript-testing-patterns/SKILL.md +35 -0
  247. package/skills/javascript-testing-patterns/resources/implementation-playbook.md +1024 -0
  248. package/skills/javascript-typescript-typescript-scaffold/SKILL.md +361 -0
  249. package/skills/julia-pro/SKILL.md +209 -0
  250. package/skills/k8s-manifest-generator/SKILL.md +35 -0
  251. package/skills/k8s-manifest-generator/assets/configmap-template.yaml +296 -0
  252. package/skills/k8s-manifest-generator/assets/deployment-template.yaml +203 -0
  253. package/skills/k8s-manifest-generator/assets/service-template.yaml +171 -0
  254. package/skills/k8s-manifest-generator/references/deployment-spec.md +753 -0
  255. package/skills/k8s-manifest-generator/references/service-spec.md +724 -0
  256. package/skills/k8s-manifest-generator/resources/implementation-playbook.md +510 -0
  257. package/skills/k8s-security-policies/SKILL.md +346 -0
  258. package/skills/k8s-security-policies/assets/network-policy-template.yaml +177 -0
  259. package/skills/k8s-security-policies/references/rbac-patterns.md +187 -0
  260. package/skills/kpi-dashboard-design/SKILL.md +440 -0
  261. package/skills/kubernetes-architect/SKILL.md +170 -0
  262. package/skills/langchain-architecture/SKILL.md +350 -0
  263. package/skills/legacy-modernizer/SKILL.md +53 -0
  264. package/skills/legal-advisor/SKILL.md +70 -0
  265. package/skills/linkerd-patterns/SKILL.md +321 -0
  266. package/skills/llm-application-dev-ai-assistant/SKILL.md +35 -0
  267. package/skills/llm-application-dev-ai-assistant/resources/implementation-playbook.md +1236 -0
  268. package/skills/llm-application-dev-langchain-agent/SKILL.md +246 -0
  269. package/skills/llm-application-dev-prompt-optimize/SKILL.md +37 -0
  270. package/skills/llm-application-dev-prompt-optimize/resources/implementation-playbook.md +591 -0
  271. package/skills/llm-evaluation/SKILL.md +483 -0
  272. package/skills/machine-learning-ops-ml-pipeline/SKILL.md +314 -0
  273. package/skills/malware-analyst/SKILL.md +247 -0
  274. package/skills/market-sizing-analysis/SKILL.md +425 -0
  275. package/skills/market-sizing-analysis/examples/saas-market-sizing.md +349 -0
  276. package/skills/market-sizing-analysis/references/data-sources.md +360 -0
  277. package/skills/memory-forensics/SKILL.md +491 -0
  278. package/skills/memory-safety-patterns/SKILL.md +33 -0
  279. package/skills/memory-safety-patterns/resources/implementation-playbook.md +603 -0
  280. package/skills/mermaid-expert/SKILL.md +59 -0
  281. package/skills/microservices-patterns/SKILL.md +35 -0
  282. package/skills/microservices-patterns/resources/implementation-playbook.md +607 -0
  283. package/skills/minecraft-bukkit-pro/SKILL.md +126 -0
  284. package/skills/ml-engineer/SKILL.md +168 -0
  285. package/skills/ml-pipeline-workflow/SKILL.md +257 -0
  286. package/skills/mlops-engineer/SKILL.md +219 -0
  287. package/skills/mobile-developer/SKILL.md +205 -0
  288. package/skills/mobile-security-coder/SKILL.md +184 -0
  289. package/skills/modern-javascript-patterns/SKILL.md +35 -0
  290. package/skills/modern-javascript-patterns/resources/implementation-playbook.md +910 -0
  291. package/skills/monorepo-architect/SKILL.md +61 -0
  292. package/skills/monorepo-management/SKILL.md +35 -0
  293. package/skills/monorepo-management/resources/implementation-playbook.md +621 -0
  294. package/skills/mtls-configuration/SKILL.md +359 -0
  295. package/skills/multi-cloud-architecture/SKILL.md +189 -0
  296. package/skills/multi-platform-apps-multi-platform/SKILL.md +203 -0
  297. package/skills/network-engineer/SKILL.md +169 -0
  298. package/skills/nextjs-app-router-patterns/SKILL.md +33 -0
  299. package/skills/nextjs-app-router-patterns/resources/implementation-playbook.md +543 -0
  300. package/skills/nft-standards/SKILL.md +395 -0
  301. package/skills/node-expert/SKILL.md +23 -0
  302. package/skills/nodejs-backend-patterns/SKILL.md +35 -0
  303. package/skills/nodejs-backend-patterns/resources/implementation-playbook.md +1019 -0
  304. package/skills/nx-workspace-patterns/SKILL.md +464 -0
  305. package/skills/observability-engineer/SKILL.md +237 -0
  306. package/skills/observability-monitoring-monitor-setup/SKILL.md +48 -0
  307. package/skills/observability-monitoring-monitor-setup/resources/implementation-playbook.md +505 -0
  308. package/skills/observability-monitoring-slo-implement/SKILL.md +43 -0
  309. package/skills/observability-monitoring-slo-implement/resources/implementation-playbook.md +1077 -0
  310. package/skills/on-call-handoff-patterns/SKILL.md +453 -0
  311. package/skills/openapi-spec-generation/SKILL.md +33 -0
  312. package/skills/openapi-spec-generation/resources/implementation-playbook.md +1027 -0
  313. package/skills/payment-integration/SKILL.md +77 -0
  314. package/skills/paypal-integration/SKILL.md +479 -0
  315. package/skills/pci-compliance/SKILL.md +478 -0
  316. package/skills/performance-engineer/SKILL.md +180 -0
  317. package/skills/performance-testing-review-ai-review/SKILL.md +450 -0
  318. package/skills/performance-testing-review-multi-agent-review/SKILL.md +216 -0
  319. package/skills/php-pro/SKILL.md +63 -0
  320. package/skills/posix-shell-pro/SKILL.md +304 -0
  321. package/skills/postgresql/SKILL.md +230 -0
  322. package/skills/postmortem-writing/SKILL.md +386 -0
  323. package/skills/projection-patterns/SKILL.md +33 -0
  324. package/skills/projection-patterns/resources/implementation-playbook.md +501 -0
  325. package/skills/prometheus-configuration/SKILL.md +404 -0
  326. package/skills/prompt-engineer/SKILL.md +272 -0
  327. package/skills/prompt-engineering-patterns/SKILL.md +213 -0
  328. package/skills/prompt-engineering-patterns/assets/few-shot-examples.json +106 -0
  329. package/skills/prompt-engineering-patterns/assets/prompt-template-library.md +246 -0
  330. package/skills/prompt-engineering-patterns/references/chain-of-thought.md +399 -0
  331. package/skills/prompt-engineering-patterns/references/few-shot-learning.md +369 -0
  332. package/skills/prompt-engineering-patterns/references/prompt-optimization.md +414 -0
  333. package/skills/prompt-engineering-patterns/references/prompt-templates.md +470 -0
  334. package/skills/prompt-engineering-patterns/references/system-prompts.md +189 -0
  335. package/skills/prompt-engineering-patterns/scripts/optimize-prompt.py +279 -0
  336. package/skills/protocol-reverse-engineering/SKILL.md +29 -0
  337. package/skills/protocol-reverse-engineering/resources/implementation-playbook.md +509 -0
  338. package/skills/python-development-python-scaffold/SKILL.md +331 -0
  339. package/skills/python-packaging/SKILL.md +36 -0
  340. package/skills/python-packaging/resources/implementation-playbook.md +869 -0
  341. package/skills/python-performance-optimization/SKILL.md +36 -0
  342. package/skills/python-performance-optimization/resources/implementation-playbook.md +868 -0
  343. package/skills/python-pro/SKILL.md +158 -0
  344. package/skills/python-testing-patterns/SKILL.md +37 -0
  345. package/skills/python-testing-patterns/resources/implementation-playbook.md +906 -0
  346. package/skills/quant-analyst/SKILL.md +53 -0
  347. package/skills/rag-implementation/SKILL.md +421 -0
  348. package/skills/react-modernization/SKILL.md +34 -0
  349. package/skills/react-modernization/resources/implementation-playbook.md +512 -0
  350. package/skills/react-native-architecture/SKILL.md +33 -0
  351. package/skills/react-native-architecture/resources/implementation-playbook.md +670 -0
  352. package/skills/react-state-management/SKILL.md +441 -0
  353. package/skills/reference-builder/SKILL.md +188 -0
  354. package/skills/reverse-engineer/SKILL.md +173 -0
  355. package/skills/risk-manager/SKILL.md +61 -0
  356. package/skills/risk-metrics-calculation/SKILL.md +33 -0
  357. package/skills/risk-metrics-calculation/resources/implementation-playbook.md +554 -0
  358. package/skills/ruby-pro/SKILL.md +56 -0
  359. package/skills/rust-async-patterns/SKILL.md +33 -0
  360. package/skills/rust-async-patterns/resources/implementation-playbook.md +516 -0
  361. package/skills/rust-pro/SKILL.md +178 -0
  362. package/skills/saga-orchestration/SKILL.md +496 -0
  363. package/skills/sales-automator/SKILL.md +55 -0
  364. package/skills/sast-configuration/SKILL.md +212 -0
  365. package/skills/scala-pro/SKILL.md +82 -0
  366. package/skills/screen-reader-testing/SKILL.md +33 -0
  367. package/skills/screen-reader-testing/resources/implementation-playbook.md +544 -0
  368. package/skills/search-specialist/SKILL.md +80 -0
  369. package/skills/secrets-management/SKILL.md +364 -0
  370. package/skills/security-auditor/SKILL.md +169 -0
  371. package/skills/security-compliance-compliance-check/SKILL.md +55 -0
  372. package/skills/security-compliance-compliance-check/resources/implementation-playbook.md +963 -0
  373. package/skills/security-requirement-extraction/SKILL.md +33 -0
  374. package/skills/security-requirement-extraction/resources/implementation-playbook.md +676 -0
  375. package/skills/security-scanning-security-dependencies/SKILL.md +43 -0
  376. package/skills/security-scanning-security-dependencies/resources/implementation-playbook.md +544 -0
  377. package/skills/security-scanning-security-hardening/SKILL.md +147 -0
  378. package/skills/security-scanning-security-sast/SKILL.md +495 -0
  379. package/skills/seo-authority-builder/SKILL.md +136 -0
  380. package/skills/seo-cannibalization-detector/SKILL.md +123 -0
  381. package/skills/seo-content-auditor/SKILL.md +83 -0
  382. package/skills/seo-content-planner/SKILL.md +108 -0
  383. package/skills/seo-content-refresher/SKILL.md +118 -0
  384. package/skills/seo-content-writer/SKILL.md +96 -0
  385. package/skills/seo-keyword-strategist/SKILL.md +95 -0
  386. package/skills/seo-meta-optimizer/SKILL.md +92 -0
  387. package/skills/seo-snippet-hunter/SKILL.md +114 -0
  388. package/skills/seo-structure-architect/SKILL.md +108 -0
  389. package/skills/service-mesh-expert/SKILL.md +58 -0
  390. package/skills/service-mesh-observability/SKILL.md +395 -0
  391. package/skills/shellcheck-configuration/SKILL.md +466 -0
  392. package/skills/similarity-search-patterns/SKILL.md +33 -0
  393. package/skills/similarity-search-patterns/resources/implementation-playbook.md +557 -0
  394. package/skills/slo-implementation/SKILL.md +341 -0
  395. package/skills/solidity-security/SKILL.md +34 -0
  396. package/skills/solidity-security/resources/implementation-playbook.md +524 -0
  397. package/skills/spark-optimization/SKILL.md +427 -0
  398. package/skills/sql-optimization-patterns/SKILL.md +35 -0
  399. package/skills/sql-optimization-patterns/resources/implementation-playbook.md +504 -0
  400. package/skills/sql-pro/SKILL.md +173 -0
  401. package/skills/startup-analyst/SKILL.md +328 -0
  402. package/skills/startup-business-analyst-business-case/SKILL.md +487 -0
  403. package/skills/startup-business-analyst-financial-projections/SKILL.md +353 -0
  404. package/skills/startup-business-analyst-market-opportunity/SKILL.md +240 -0
  405. package/skills/startup-financial-modeling/SKILL.md +467 -0
  406. package/skills/startup-metrics-framework/SKILL.md +34 -0
  407. package/skills/startup-metrics-framework/resources/implementation-playbook.md +500 -0
  408. package/skills/stride-analysis-patterns/SKILL.md +33 -0
  409. package/skills/stride-analysis-patterns/resources/implementation-playbook.md +655 -0
  410. package/skills/stripe-integration/SKILL.md +454 -0
  411. package/skills/systems-programming-rust-project/SKILL.md +440 -0
  412. package/skills/tailwind-design-system/SKILL.md +33 -0
  413. package/skills/tailwind-design-system/resources/implementation-playbook.md +665 -0
  414. package/skills/tdd-orchestrator/SKILL.md +205 -0
  415. package/skills/tdd-workflows-tdd-cycle/SKILL.md +221 -0
  416. package/skills/tdd-workflows-tdd-green/SKILL.md +73 -0
  417. package/skills/tdd-workflows-tdd-green/resources/implementation-playbook.md +870 -0
  418. package/skills/tdd-workflows-tdd-red/SKILL.md +164 -0
  419. package/skills/tdd-workflows-tdd-refactor/SKILL.md +187 -0
  420. package/skills/team-collaboration-issue/SKILL.md +37 -0
  421. package/skills/team-collaboration-issue/resources/implementation-playbook.md +640 -0
  422. package/skills/team-collaboration-standup-notes/SKILL.md +44 -0
  423. package/skills/team-collaboration-standup-notes/resources/implementation-playbook.md +768 -0
  424. package/skills/team-composition-analysis/SKILL.md +413 -0
  425. package/skills/temporal-python-pro/SKILL.md +370 -0
  426. package/skills/temporal-python-testing/SKILL.md +170 -0
  427. package/skills/temporal-python-testing/resources/integration-testing.md +455 -0
  428. package/skills/temporal-python-testing/resources/local-setup.md +553 -0
  429. package/skills/temporal-python-testing/resources/replay-testing.md +462 -0
  430. package/skills/temporal-python-testing/resources/unit-testing.md +328 -0
  431. package/skills/terraform-module-library/SKILL.md +261 -0
  432. package/skills/terraform-module-library/references/aws-modules.md +63 -0
  433. package/skills/terraform-specialist/SKILL.md +166 -0
  434. package/skills/test-automator/SKILL.md +224 -0
  435. package/skills/threat-mitigation-mapping/SKILL.md +33 -0
  436. package/skills/threat-mitigation-mapping/resources/implementation-playbook.md +744 -0
  437. package/skills/threat-modeling-expert/SKILL.md +60 -0
  438. package/skills/track-management/SKILL.md +38 -0
  439. package/skills/track-management/resources/implementation-playbook.md +591 -0
  440. package/skills/turborepo-caching/SKILL.md +419 -0
  441. package/skills/tutorial-engineer/SKILL.md +139 -0
  442. package/skills/typescript-advanced-types/SKILL.md +35 -0
  443. package/skills/typescript-advanced-types/resources/implementation-playbook.md +716 -0
  444. package/skills/typescript-pro/SKILL.md +55 -0
  445. package/skills/ui-minimal/SKILL.md +23 -0
  446. package/skills/ui-ux-designer/SKILL.md +209 -0
  447. package/skills/ui-visual-validator/SKILL.md +214 -0
  448. package/skills/unit-testing-test-generate/SKILL.md +319 -0
  449. package/skills/unity-developer/SKILL.md +230 -0
  450. package/skills/unity-ecs-patterns/SKILL.md +33 -0
  451. package/skills/unity-ecs-patterns/resources/implementation-playbook.md +625 -0
  452. package/skills/uv-package-manager/SKILL.md +37 -0
  453. package/skills/uv-package-manager/resources/implementation-playbook.md +830 -0
  454. package/skills/vector-database-engineer/SKILL.md +60 -0
  455. package/skills/vector-index-tuning/SKILL.md +42 -0
  456. package/skills/vector-index-tuning/resources/implementation-playbook.md +507 -0
  457. package/skills/wcag-audit-patterns/SKILL.md +41 -0
  458. package/skills/wcag-audit-patterns/resources/implementation-playbook.md +541 -0
  459. package/skills/web3-testing/SKILL.md +427 -0
  460. package/skills/workflow-orchestration-patterns/SKILL.md +333 -0
  461. package/skills/workflow-patterns/SKILL.md +38 -0
  462. package/skills/workflow-patterns/resources/implementation-playbook.md +621 -0
@@ -0,0 +1,502 @@
1
+ # Accessibility Audit and Testing Implementation Playbook
2
+
3
+ This file contains detailed patterns, checklists, and code samples referenced by the skill.
4
+
5
+ ## Instructions
6
+
7
+ ### 1. Automated Testing with axe-core
8
+
9
+ ```javascript
10
+ // accessibility-test.js
11
+ const { AxePuppeteer } = require("@axe-core/puppeteer");
12
+ const puppeteer = require("puppeteer");
13
+
14
+ class AccessibilityAuditor {
15
+ constructor(options = {}) {
16
+ this.wcagLevel = options.wcagLevel || "AA";
17
+ this.viewport = options.viewport || { width: 1920, height: 1080 };
18
+ }
19
+
20
+ async runFullAudit(url) {
21
+ const browser = await puppeteer.launch();
22
+ const page = await browser.newPage();
23
+ await page.setViewport(this.viewport);
24
+ await page.goto(url, { waitUntil: "networkidle2" });
25
+
26
+ const results = await new AxePuppeteer(page)
27
+ .withTags(["wcag2a", "wcag2aa", "wcag21a", "wcag21aa"])
28
+ .exclude(".no-a11y-check")
29
+ .analyze();
30
+
31
+ await browser.close();
32
+
33
+ return {
34
+ url,
35
+ timestamp: new Date().toISOString(),
36
+ violations: results.violations.map((v) => ({
37
+ id: v.id,
38
+ impact: v.impact,
39
+ description: v.description,
40
+ help: v.help,
41
+ helpUrl: v.helpUrl,
42
+ nodes: v.nodes.map((n) => ({
43
+ html: n.html,
44
+ target: n.target,
45
+ failureSummary: n.failureSummary,
46
+ })),
47
+ })),
48
+ score: this.calculateScore(results),
49
+ };
50
+ }
51
+
52
+ calculateScore(results) {
53
+ const weights = { critical: 10, serious: 5, moderate: 2, minor: 1 };
54
+ let totalWeight = 0;
55
+ results.violations.forEach((v) => {
56
+ totalWeight += weights[v.impact] || 0;
57
+ });
58
+ return Math.max(0, 100 - totalWeight);
59
+ }
60
+ }
61
+
62
+ // Component testing with jest-axe
63
+ import { render } from "@testing-library/react";
64
+ import { axe, toHaveNoViolations } from "jest-axe";
65
+
66
+ expect.extend(toHaveNoViolations);
67
+
68
+ describe("Accessibility Tests", () => {
69
+ it("should have no violations", async () => {
70
+ const { container } = render(<MyComponent />);
71
+ const results = await axe(container);
72
+ expect(results).toHaveNoViolations();
73
+ });
74
+ });
75
+ ```
76
+
77
+ ### 2. Color Contrast Validation
78
+
79
+ ```javascript
80
+ // color-contrast.js
81
+ class ColorContrastAnalyzer {
82
+ constructor() {
83
+ this.wcagLevels = {
84
+ 'AA': { normal: 4.5, large: 3 },
85
+ 'AAA': { normal: 7, large: 4.5 }
86
+ };
87
+ }
88
+
89
+ async analyzePageContrast(page) {
90
+ const elements = await page.evaluate(() => {
91
+ return Array.from(document.querySelectorAll('*'))
92
+ .filter(el => el.innerText && el.innerText.trim())
93
+ .map(el => {
94
+ const styles = window.getComputedStyle(el);
95
+ return {
96
+ text: el.innerText.trim().substring(0, 50),
97
+ color: styles.color,
98
+ backgroundColor: styles.backgroundColor,
99
+ fontSize: parseFloat(styles.fontSize),
100
+ fontWeight: styles.fontWeight
101
+ };
102
+ });
103
+ });
104
+
105
+ return elements
106
+ .map(el => {
107
+ const contrast = this.calculateContrast(el.color, el.backgroundColor);
108
+ const isLarge = this.isLargeText(el.fontSize, el.fontWeight);
109
+ const required = isLarge ? this.wcagLevels.AA.large : this.wcagLevels.AA.normal;
110
+
111
+ if (contrast < required) {
112
+ return {
113
+ text: el.text,
114
+ currentContrast: contrast.toFixed(2),
115
+ requiredContrast: required,
116
+ foreground: el.color,
117
+ background: el.backgroundColor
118
+ };
119
+ }
120
+ return null;
121
+ })
122
+ .filter(Boolean);
123
+ }
124
+
125
+ calculateContrast(fg, bg) {
126
+ const l1 = this.relativeLuminance(this.parseColor(fg));
127
+ const l2 = this.relativeLuminance(this.parseColor(bg));
128
+ const lighter = Math.max(l1, l2);
129
+ const darker = Math.min(l1, l2);
130
+ return (lighter + 0.05) / (darker + 0.05);
131
+ }
132
+
133
+ relativeLuminance(rgb) {
134
+ const [r, g, b] = rgb.map(val => {
135
+ val = val / 255;
136
+ return val <= 0.03928 ? val / 12.92 : Math.pow((val + 0.055) / 1.055, 2.4);
137
+ });
138
+ return 0.2126 * r + 0.7152 * g + 0.0722 * b;
139
+ }
140
+ }
141
+
142
+ // High contrast CSS
143
+ @media (prefers-contrast: high) {
144
+ :root {
145
+ --text-primary: #000;
146
+ --bg-primary: #fff;
147
+ --border-color: #000;
148
+ }
149
+ a { text-decoration: underline !important; }
150
+ button, input { border: 2px solid var(--border-color) !important; }
151
+ }
152
+ ```
153
+
154
+ ### 3. Keyboard Navigation Testing
155
+
156
+ ```javascript
157
+ // keyboard-navigation.js
158
+ class KeyboardNavigationTester {
159
+ async testKeyboardNavigation(page) {
160
+ const results = {
161
+ focusableElements: [],
162
+ missingFocusIndicators: [],
163
+ keyboardTraps: [],
164
+ };
165
+
166
+ // Get all focusable elements
167
+ const focusable = await page.evaluate(() => {
168
+ const selector =
169
+ 'a[href], button, input, select, textarea, [tabindex]:not([tabindex="-1"])';
170
+ return Array.from(document.querySelectorAll(selector)).map((el) => ({
171
+ tagName: el.tagName.toLowerCase(),
172
+ text: el.innerText || el.value || el.placeholder || "",
173
+ tabIndex: el.tabIndex,
174
+ }));
175
+ });
176
+
177
+ results.focusableElements = focusable;
178
+
179
+ // Test tab order and focus indicators
180
+ for (let i = 0; i < focusable.length; i++) {
181
+ await page.keyboard.press("Tab");
182
+
183
+ const focused = await page.evaluate(() => {
184
+ const el = document.activeElement;
185
+ return {
186
+ tagName: el.tagName.toLowerCase(),
187
+ hasFocusIndicator: window.getComputedStyle(el).outline !== "none",
188
+ };
189
+ });
190
+
191
+ if (!focused.hasFocusIndicator) {
192
+ results.missingFocusIndicators.push(focused);
193
+ }
194
+ }
195
+
196
+ return results;
197
+ }
198
+ }
199
+
200
+ // Enhance keyboard accessibility
201
+ document.addEventListener("keydown", (e) => {
202
+ if (e.key === "Escape") {
203
+ const modal = document.querySelector(".modal.open");
204
+ if (modal) closeModal(modal);
205
+ }
206
+ });
207
+
208
+ // Make div clickable accessible
209
+ document.querySelectorAll("[onclick]").forEach((el) => {
210
+ if (!["a", "button", "input"].includes(el.tagName.toLowerCase())) {
211
+ el.setAttribute("tabindex", "0");
212
+ el.setAttribute("role", "button");
213
+ el.addEventListener("keydown", (e) => {
214
+ if (e.key === "Enter" || e.key === " ") {
215
+ el.click();
216
+ e.preventDefault();
217
+ }
218
+ });
219
+ }
220
+ });
221
+ ```
222
+
223
+ ### 4. Screen Reader Testing
224
+
225
+ ```javascript
226
+ // screen-reader-test.js
227
+ class ScreenReaderTester {
228
+ async testScreenReaderCompatibility(page) {
229
+ return {
230
+ landmarks: await this.testLandmarks(page),
231
+ headings: await this.testHeadingStructure(page),
232
+ images: await this.testImageAccessibility(page),
233
+ forms: await this.testFormAccessibility(page),
234
+ };
235
+ }
236
+
237
+ async testHeadingStructure(page) {
238
+ const headings = await page.evaluate(() => {
239
+ return Array.from(
240
+ document.querySelectorAll("h1, h2, h3, h4, h5, h6"),
241
+ ).map((h) => ({
242
+ level: parseInt(h.tagName[1]),
243
+ text: h.textContent.trim(),
244
+ isEmpty: !h.textContent.trim(),
245
+ }));
246
+ });
247
+
248
+ const issues = [];
249
+ let previousLevel = 0;
250
+
251
+ headings.forEach((heading, index) => {
252
+ if (heading.level > previousLevel + 1 && previousLevel !== 0) {
253
+ issues.push({
254
+ type: "skipped-level",
255
+ message: `Heading level ${heading.level} skips from level ${previousLevel}`,
256
+ });
257
+ }
258
+ if (heading.isEmpty) {
259
+ issues.push({ type: "empty-heading", index });
260
+ }
261
+ previousLevel = heading.level;
262
+ });
263
+
264
+ if (!headings.some((h) => h.level === 1)) {
265
+ issues.push({ type: "missing-h1", message: "Page missing h1 element" });
266
+ }
267
+
268
+ return { headings, issues };
269
+ }
270
+
271
+ async testFormAccessibility(page) {
272
+ const forms = await page.evaluate(() => {
273
+ return Array.from(document.querySelectorAll("form")).map((form) => {
274
+ const inputs = form.querySelectorAll("input, textarea, select");
275
+ return {
276
+ fields: Array.from(inputs).map((input) => ({
277
+ type: input.type || input.tagName.toLowerCase(),
278
+ id: input.id,
279
+ hasLabel: input.id
280
+ ? !!document.querySelector(`label[for="${input.id}"]`)
281
+ : !!input.closest("label"),
282
+ hasAriaLabel: !!input.getAttribute("aria-label"),
283
+ required: input.required,
284
+ })),
285
+ };
286
+ });
287
+ });
288
+
289
+ const issues = [];
290
+ forms.forEach((form, i) => {
291
+ form.fields.forEach((field, j) => {
292
+ if (!field.hasLabel && !field.hasAriaLabel) {
293
+ issues.push({ type: "missing-label", form: i, field: j });
294
+ }
295
+ });
296
+ });
297
+
298
+ return { forms, issues };
299
+ }
300
+ }
301
+
302
+ // ARIA patterns
303
+ const ariaPatterns = {
304
+ modal: `
305
+ <div role="dialog" aria-labelledby="modal-title" aria-modal="true">
306
+ <h2 id="modal-title">Modal Title</h2>
307
+ <button aria-label="Close">×</button>
308
+ </div>`,
309
+
310
+ tabs: `
311
+ <div role="tablist" aria-label="Navigation">
312
+ <button role="tab" aria-selected="true" aria-controls="panel-1">Tab 1</button>
313
+ </div>
314
+ <div role="tabpanel" id="panel-1" aria-labelledby="tab-1">Content</div>`,
315
+
316
+ form: `
317
+ <label for="name">Name <span aria-label="required">*</span></label>
318
+ <input id="name" required aria-required="true" aria-describedby="name-error">
319
+ <span id="name-error" role="alert" aria-live="polite"></span>`,
320
+ };
321
+ ```
322
+
323
+ ### 5. Manual Testing Checklist
324
+
325
+ ```markdown
326
+ ## Manual Accessibility Testing
327
+
328
+ ### Keyboard Navigation
329
+
330
+ - [ ] All interactive elements accessible via Tab
331
+ - [ ] Buttons activate with Enter/Space
332
+ - [ ] Esc key closes modals
333
+ - [ ] Focus indicator always visible
334
+ - [ ] No keyboard traps
335
+ - [ ] Logical tab order
336
+
337
+ ### Screen Reader
338
+
339
+ - [ ] Page title descriptive
340
+ - [ ] Headings create logical outline
341
+ - [ ] Images have alt text
342
+ - [ ] Form fields have labels
343
+ - [ ] Error messages announced
344
+ - [ ] Dynamic updates announced
345
+
346
+ ### Visual
347
+
348
+ - [ ] Text resizes to 200% without loss
349
+ - [ ] Color not sole means of info
350
+ - [ ] Focus indicators have sufficient contrast
351
+ - [ ] Content reflows at 320px
352
+ - [ ] Animations can be paused
353
+
354
+ ### Cognitive
355
+
356
+ - [ ] Instructions clear and simple
357
+ - [ ] Error messages helpful
358
+ - [ ] No time limits on forms
359
+ - [ ] Navigation consistent
360
+ - [ ] Important actions reversible
361
+ ```
362
+
363
+ ### 6. Remediation Examples
364
+
365
+ ```javascript
366
+ // Fix missing alt text
367
+ document.querySelectorAll("img:not([alt])").forEach((img) => {
368
+ const isDecorative =
369
+ img.role === "presentation" || img.closest('[role="presentation"]');
370
+ img.setAttribute("alt", isDecorative ? "" : img.title || "Image");
371
+ });
372
+
373
+ // Fix missing labels
374
+ document
375
+ .querySelectorAll("input:not([aria-label]):not([id])")
376
+ .forEach((input) => {
377
+ if (input.placeholder) {
378
+ input.setAttribute("aria-label", input.placeholder);
379
+ }
380
+ });
381
+
382
+ // React accessible components
383
+ const AccessibleButton = ({ children, onClick, ariaLabel, ...props }) => (
384
+ <button onClick={onClick} aria-label={ariaLabel} {...props}>
385
+ {children}
386
+ </button>
387
+ );
388
+
389
+ const LiveRegion = ({ message, politeness = "polite" }) => (
390
+ <div
391
+ role="status"
392
+ aria-live={politeness}
393
+ aria-atomic="true"
394
+ className="sr-only"
395
+ >
396
+ {message}
397
+ </div>
398
+ );
399
+ ```
400
+
401
+ ### 7. CI/CD Integration
402
+
403
+ ```yaml
404
+ # .github/workflows/accessibility.yml
405
+ name: Accessibility Tests
406
+
407
+ on: [push, pull_request]
408
+
409
+ jobs:
410
+ a11y-tests:
411
+ runs-on: ubuntu-latest
412
+
413
+ steps:
414
+ - uses: actions/checkout@v3
415
+
416
+ - name: Setup Node.js
417
+ uses: actions/setup-node@v3
418
+ with:
419
+ node-version: "18"
420
+
421
+ - name: Install and build
422
+ run: |
423
+ npm ci
424
+ npm run build
425
+
426
+ - name: Start server
427
+ run: |
428
+ npm start &
429
+ npx wait-on http://localhost:3000
430
+
431
+ - name: Run axe tests
432
+ run: npm run test:a11y
433
+
434
+ - name: Run pa11y
435
+ run: npx pa11y http://localhost:3000 --standard WCAG2AA --threshold 0
436
+
437
+ - name: Upload report
438
+ uses: actions/upload-artifact@v3
439
+ if: always()
440
+ with:
441
+ name: a11y-report
442
+ path: a11y-report.html
443
+ ```
444
+
445
+ ### 8. Reporting
446
+
447
+ ```javascript
448
+ // report-generator.js
449
+ class AccessibilityReportGenerator {
450
+ generateHTMLReport(auditResults) {
451
+ return `
452
+ <!DOCTYPE html>
453
+ <html lang="en">
454
+ <head>
455
+ <title>Accessibility Audit</title>
456
+ <style>
457
+ body { font-family: Arial, sans-serif; margin: 20px; }
458
+ .summary { background: #f0f0f0; padding: 20px; border-radius: 8px; }
459
+ .score { font-size: 48px; font-weight: bold; }
460
+ .violation { margin: 20px 0; padding: 15px; border: 1px solid #ddd; }
461
+ .critical { border-color: #f00; background: #fee; }
462
+ .serious { border-color: #fa0; background: #ffe; }
463
+ </style>
464
+ </head>
465
+ <body>
466
+ <h1>Accessibility Audit Report</h1>
467
+ <p>Generated: ${new Date().toLocaleString()}</p>
468
+
469
+ <div class="summary">
470
+ <h2>Summary</h2>
471
+ <div class="score">${auditResults.score}/100</div>
472
+ <p>Total Violations: ${auditResults.violations.length}</p>
473
+ </div>
474
+
475
+ <h2>Violations</h2>
476
+ ${auditResults.violations
477
+ .map(
478
+ (v) => `
479
+ <div class="violation ${v.impact}">
480
+ <h3>${v.help}</h3>
481
+ <p><strong>Impact:</strong> ${v.impact}</p>
482
+ <p>${v.description}</p>
483
+ <a href="${v.helpUrl}">Learn more</a>
484
+ </div>
485
+ `,
486
+ )
487
+ .join("")}
488
+ </body>
489
+ </html>`;
490
+ }
491
+ }
492
+ ```
493
+
494
+ ## Output Format
495
+
496
+ 1. **Accessibility Score**: Overall compliance with WCAG levels
497
+ 2. **Violation Report**: Detailed issues with severity and fixes
498
+ 3. **Test Results**: Automated and manual test outcomes
499
+ 4. **Remediation Guide**: Step-by-step fixes for each issue
500
+ 5. **Code Examples**: Accessible component implementations
501
+
502
+ Focus on creating inclusive experiences that work for all users, regardless of their abilities or assistive technologies.