@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,665 @@
1
+ # Tailwind Design System Implementation Playbook
2
+
3
+ This file contains detailed patterns, checklists, and code samples referenced by the skill.
4
+
5
+ # Tailwind Design System
6
+
7
+ Build production-ready design systems with Tailwind CSS, including design tokens, component variants, responsive patterns, and accessibility.
8
+
9
+ ## When to Use This Skill
10
+
11
+ - Creating a component library with Tailwind
12
+ - Implementing design tokens and theming
13
+ - Building responsive and accessible components
14
+ - Standardizing UI patterns across a codebase
15
+ - Migrating to or extending Tailwind CSS
16
+ - Setting up dark mode and color schemes
17
+
18
+ ## Core Concepts
19
+
20
+ ### 1. Design Token Hierarchy
21
+
22
+ ```
23
+ Brand Tokens (abstract)
24
+ └── Semantic Tokens (purpose)
25
+ └── Component Tokens (specific)
26
+
27
+ Example:
28
+ blue-500 → primary → button-bg
29
+ ```
30
+
31
+ ### 2. Component Architecture
32
+
33
+ ```
34
+ Base styles → Variants → Sizes → States → Overrides
35
+ ```
36
+
37
+ ## Quick Start
38
+
39
+ ```typescript
40
+ // tailwind.config.ts
41
+ import type { Config } from 'tailwindcss'
42
+
43
+ const config: Config = {
44
+ content: ['./src/**/*.{js,ts,jsx,tsx,mdx}'],
45
+ darkMode: 'class',
46
+ theme: {
47
+ extend: {
48
+ colors: {
49
+ // Semantic color tokens
50
+ primary: {
51
+ DEFAULT: 'hsl(var(--primary))',
52
+ foreground: 'hsl(var(--primary-foreground))',
53
+ },
54
+ secondary: {
55
+ DEFAULT: 'hsl(var(--secondary))',
56
+ foreground: 'hsl(var(--secondary-foreground))',
57
+ },
58
+ destructive: {
59
+ DEFAULT: 'hsl(var(--destructive))',
60
+ foreground: 'hsl(var(--destructive-foreground))',
61
+ },
62
+ muted: {
63
+ DEFAULT: 'hsl(var(--muted))',
64
+ foreground: 'hsl(var(--muted-foreground))',
65
+ },
66
+ accent: {
67
+ DEFAULT: 'hsl(var(--accent))',
68
+ foreground: 'hsl(var(--accent-foreground))',
69
+ },
70
+ background: 'hsl(var(--background))',
71
+ foreground: 'hsl(var(--foreground))',
72
+ border: 'hsl(var(--border))',
73
+ ring: 'hsl(var(--ring))',
74
+ },
75
+ borderRadius: {
76
+ lg: 'var(--radius)',
77
+ md: 'calc(var(--radius) - 2px)',
78
+ sm: 'calc(var(--radius) - 4px)',
79
+ },
80
+ },
81
+ },
82
+ plugins: [require('tailwindcss-animate')],
83
+ }
84
+
85
+ export default config
86
+ ```
87
+
88
+ ```css
89
+ /* globals.css */
90
+ @tailwind base;
91
+ @tailwind components;
92
+ @tailwind utilities;
93
+
94
+ @layer base {
95
+ :root {
96
+ --background: 0 0% 100%;
97
+ --foreground: 222.2 84% 4.9%;
98
+ --primary: 222.2 47.4% 11.2%;
99
+ --primary-foreground: 210 40% 98%;
100
+ --secondary: 210 40% 96.1%;
101
+ --secondary-foreground: 222.2 47.4% 11.2%;
102
+ --muted: 210 40% 96.1%;
103
+ --muted-foreground: 215.4 16.3% 46.9%;
104
+ --accent: 210 40% 96.1%;
105
+ --accent-foreground: 222.2 47.4% 11.2%;
106
+ --destructive: 0 84.2% 60.2%;
107
+ --destructive-foreground: 210 40% 98%;
108
+ --border: 214.3 31.8% 91.4%;
109
+ --ring: 222.2 84% 4.9%;
110
+ --radius: 0.5rem;
111
+ }
112
+
113
+ .dark {
114
+ --background: 222.2 84% 4.9%;
115
+ --foreground: 210 40% 98%;
116
+ --primary: 210 40% 98%;
117
+ --primary-foreground: 222.2 47.4% 11.2%;
118
+ --secondary: 217.2 32.6% 17.5%;
119
+ --secondary-foreground: 210 40% 98%;
120
+ --muted: 217.2 32.6% 17.5%;
121
+ --muted-foreground: 215 20.2% 65.1%;
122
+ --accent: 217.2 32.6% 17.5%;
123
+ --accent-foreground: 210 40% 98%;
124
+ --destructive: 0 62.8% 30.6%;
125
+ --destructive-foreground: 210 40% 98%;
126
+ --border: 217.2 32.6% 17.5%;
127
+ --ring: 212.7 26.8% 83.9%;
128
+ }
129
+ }
130
+ ```
131
+
132
+ ## Patterns
133
+
134
+ ### Pattern 1: CVA (Class Variance Authority) Components
135
+
136
+ ```typescript
137
+ // components/ui/button.tsx
138
+ import { cva, type VariantProps } from 'class-variance-authority'
139
+ import { forwardRef } from 'react'
140
+ import { cn } from '@/lib/utils'
141
+
142
+ const buttonVariants = cva(
143
+ // Base styles
144
+ 'inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50',
145
+ {
146
+ variants: {
147
+ variant: {
148
+ default: 'bg-primary text-primary-foreground hover:bg-primary/90',
149
+ destructive: 'bg-destructive text-destructive-foreground hover:bg-destructive/90',
150
+ outline: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground',
151
+ secondary: 'bg-secondary text-secondary-foreground hover:bg-secondary/80',
152
+ ghost: 'hover:bg-accent hover:text-accent-foreground',
153
+ link: 'text-primary underline-offset-4 hover:underline',
154
+ },
155
+ size: {
156
+ default: 'h-10 px-4 py-2',
157
+ sm: 'h-9 rounded-md px-3',
158
+ lg: 'h-11 rounded-md px-8',
159
+ icon: 'h-10 w-10',
160
+ },
161
+ },
162
+ defaultVariants: {
163
+ variant: 'default',
164
+ size: 'default',
165
+ },
166
+ }
167
+ )
168
+
169
+ export interface ButtonProps
170
+ extends React.ButtonHTMLAttributes<HTMLButtonElement>,
171
+ VariantProps<typeof buttonVariants> {
172
+ asChild?: boolean
173
+ }
174
+
175
+ const Button = forwardRef<HTMLButtonElement, ButtonProps>(
176
+ ({ className, variant, size, asChild = false, ...props }, ref) => {
177
+ const Comp = asChild ? Slot : 'button'
178
+ return (
179
+ <Comp
180
+ className={cn(buttonVariants({ variant, size, className }))}
181
+ ref={ref}
182
+ {...props}
183
+ />
184
+ )
185
+ }
186
+ )
187
+ Button.displayName = 'Button'
188
+
189
+ export { Button, buttonVariants }
190
+
191
+ // Usage
192
+ <Button variant="destructive" size="lg">Delete</Button>
193
+ <Button variant="outline">Cancel</Button>
194
+ <Button asChild><Link href="/home">Home</Link></Button>
195
+ ```
196
+
197
+ ### Pattern 2: Compound Components
198
+
199
+ ```typescript
200
+ // components/ui/card.tsx
201
+ import { cn } from '@/lib/utils'
202
+ import { forwardRef } from 'react'
203
+
204
+ const Card = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
205
+ ({ className, ...props }, ref) => (
206
+ <div
207
+ ref={ref}
208
+ className={cn(
209
+ 'rounded-lg border bg-card text-card-foreground shadow-sm',
210
+ className
211
+ )}
212
+ {...props}
213
+ />
214
+ )
215
+ )
216
+ Card.displayName = 'Card'
217
+
218
+ const CardHeader = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
219
+ ({ className, ...props }, ref) => (
220
+ <div
221
+ ref={ref}
222
+ className={cn('flex flex-col space-y-1.5 p-6', className)}
223
+ {...props}
224
+ />
225
+ )
226
+ )
227
+ CardHeader.displayName = 'CardHeader'
228
+
229
+ const CardTitle = forwardRef<HTMLHeadingElement, React.HTMLAttributes<HTMLHeadingElement>>(
230
+ ({ className, ...props }, ref) => (
231
+ <h3
232
+ ref={ref}
233
+ className={cn('text-2xl font-semibold leading-none tracking-tight', className)}
234
+ {...props}
235
+ />
236
+ )
237
+ )
238
+ CardTitle.displayName = 'CardTitle'
239
+
240
+ const CardDescription = forwardRef<HTMLParagraphElement, React.HTMLAttributes<HTMLParagraphElement>>(
241
+ ({ className, ...props }, ref) => (
242
+ <p
243
+ ref={ref}
244
+ className={cn('text-sm text-muted-foreground', className)}
245
+ {...props}
246
+ />
247
+ )
248
+ )
249
+ CardDescription.displayName = 'CardDescription'
250
+
251
+ const CardContent = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
252
+ ({ className, ...props }, ref) => (
253
+ <div ref={ref} className={cn('p-6 pt-0', className)} {...props} />
254
+ )
255
+ )
256
+ CardContent.displayName = 'CardContent'
257
+
258
+ const CardFooter = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
259
+ ({ className, ...props }, ref) => (
260
+ <div
261
+ ref={ref}
262
+ className={cn('flex items-center p-6 pt-0', className)}
263
+ {...props}
264
+ />
265
+ )
266
+ )
267
+ CardFooter.displayName = 'CardFooter'
268
+
269
+ export { Card, CardHeader, CardTitle, CardDescription, CardContent, CardFooter }
270
+
271
+ // Usage
272
+ <Card>
273
+ <CardHeader>
274
+ <CardTitle>Account</CardTitle>
275
+ <CardDescription>Manage your account settings</CardDescription>
276
+ </CardHeader>
277
+ <CardContent>
278
+ <form>...</form>
279
+ </CardContent>
280
+ <CardFooter>
281
+ <Button>Save</Button>
282
+ </CardFooter>
283
+ </Card>
284
+ ```
285
+
286
+ ### Pattern 3: Form Components
287
+
288
+ ```typescript
289
+ // components/ui/input.tsx
290
+ import { forwardRef } from 'react'
291
+ import { cn } from '@/lib/utils'
292
+
293
+ export interface InputProps extends React.InputHTMLAttributes<HTMLInputElement> {
294
+ error?: string
295
+ }
296
+
297
+ const Input = forwardRef<HTMLInputElement, InputProps>(
298
+ ({ className, type, error, ...props }, ref) => {
299
+ return (
300
+ <div className="relative">
301
+ <input
302
+ type={type}
303
+ className={cn(
304
+ 'flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50',
305
+ error && 'border-destructive focus-visible:ring-destructive',
306
+ className
307
+ )}
308
+ ref={ref}
309
+ aria-invalid={!!error}
310
+ aria-describedby={error ? `${props.id}-error` : undefined}
311
+ {...props}
312
+ />
313
+ {error && (
314
+ <p
315
+ id={`${props.id}-error`}
316
+ className="mt-1 text-sm text-destructive"
317
+ role="alert"
318
+ >
319
+ {error}
320
+ </p>
321
+ )}
322
+ </div>
323
+ )
324
+ }
325
+ )
326
+ Input.displayName = 'Input'
327
+
328
+ // components/ui/label.tsx
329
+ import { cva, type VariantProps } from 'class-variance-authority'
330
+
331
+ const labelVariants = cva(
332
+ 'text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70'
333
+ )
334
+
335
+ const Label = forwardRef<HTMLLabelElement, React.LabelHTMLAttributes<HTMLLabelElement>>(
336
+ ({ className, ...props }, ref) => (
337
+ <label ref={ref} className={cn(labelVariants(), className)} {...props} />
338
+ )
339
+ )
340
+ Label.displayName = 'Label'
341
+
342
+ // Usage with React Hook Form
343
+ import { useForm } from 'react-hook-form'
344
+ import { zodResolver } from '@hookform/resolvers/zod'
345
+ import * as z from 'zod'
346
+
347
+ const schema = z.object({
348
+ email: z.string().email('Invalid email address'),
349
+ password: z.string().min(8, 'Password must be at least 8 characters'),
350
+ })
351
+
352
+ function LoginForm() {
353
+ const { register, handleSubmit, formState: { errors } } = useForm({
354
+ resolver: zodResolver(schema),
355
+ })
356
+
357
+ return (
358
+ <form onSubmit={handleSubmit(onSubmit)} className="space-y-4">
359
+ <div className="space-y-2">
360
+ <Label htmlFor="email">Email</Label>
361
+ <Input
362
+ id="email"
363
+ type="email"
364
+ {...register('email')}
365
+ error={errors.email?.message}
366
+ />
367
+ </div>
368
+ <div className="space-y-2">
369
+ <Label htmlFor="password">Password</Label>
370
+ <Input
371
+ id="password"
372
+ type="password"
373
+ {...register('password')}
374
+ error={errors.password?.message}
375
+ />
376
+ </div>
377
+ <Button type="submit" className="w-full">Sign In</Button>
378
+ </form>
379
+ )
380
+ }
381
+ ```
382
+
383
+ ### Pattern 4: Responsive Grid System
384
+
385
+ ```typescript
386
+ // components/ui/grid.tsx
387
+ import { cn } from '@/lib/utils'
388
+ import { cva, type VariantProps } from 'class-variance-authority'
389
+
390
+ const gridVariants = cva('grid', {
391
+ variants: {
392
+ cols: {
393
+ 1: 'grid-cols-1',
394
+ 2: 'grid-cols-1 sm:grid-cols-2',
395
+ 3: 'grid-cols-1 sm:grid-cols-2 lg:grid-cols-3',
396
+ 4: 'grid-cols-1 sm:grid-cols-2 lg:grid-cols-4',
397
+ 5: 'grid-cols-2 sm:grid-cols-3 lg:grid-cols-5',
398
+ 6: 'grid-cols-2 sm:grid-cols-3 lg:grid-cols-6',
399
+ },
400
+ gap: {
401
+ none: 'gap-0',
402
+ sm: 'gap-2',
403
+ md: 'gap-4',
404
+ lg: 'gap-6',
405
+ xl: 'gap-8',
406
+ },
407
+ },
408
+ defaultVariants: {
409
+ cols: 3,
410
+ gap: 'md',
411
+ },
412
+ })
413
+
414
+ interface GridProps
415
+ extends React.HTMLAttributes<HTMLDivElement>,
416
+ VariantProps<typeof gridVariants> {}
417
+
418
+ export function Grid({ className, cols, gap, ...props }: GridProps) {
419
+ return (
420
+ <div className={cn(gridVariants({ cols, gap, className }))} {...props} />
421
+ )
422
+ }
423
+
424
+ // Container component
425
+ const containerVariants = cva('mx-auto w-full px-4 sm:px-6 lg:px-8', {
426
+ variants: {
427
+ size: {
428
+ sm: 'max-w-screen-sm',
429
+ md: 'max-w-screen-md',
430
+ lg: 'max-w-screen-lg',
431
+ xl: 'max-w-screen-xl',
432
+ '2xl': 'max-w-screen-2xl',
433
+ full: 'max-w-full',
434
+ },
435
+ },
436
+ defaultVariants: {
437
+ size: 'xl',
438
+ },
439
+ })
440
+
441
+ interface ContainerProps
442
+ extends React.HTMLAttributes<HTMLDivElement>,
443
+ VariantProps<typeof containerVariants> {}
444
+
445
+ export function Container({ className, size, ...props }: ContainerProps) {
446
+ return (
447
+ <div className={cn(containerVariants({ size, className }))} {...props} />
448
+ )
449
+ }
450
+
451
+ // Usage
452
+ <Container>
453
+ <Grid cols={4} gap="lg">
454
+ {products.map((product) => (
455
+ <ProductCard key={product.id} product={product} />
456
+ ))}
457
+ </Grid>
458
+ </Container>
459
+ ```
460
+
461
+ ### Pattern 5: Animation Utilities
462
+
463
+ ```typescript
464
+ // lib/animations.ts - Tailwind CSS Animate utilities
465
+ import { cn } from './utils'
466
+
467
+ export const fadeIn = 'animate-in fade-in duration-300'
468
+ export const fadeOut = 'animate-out fade-out duration-300'
469
+ export const slideInFromTop = 'animate-in slide-in-from-top duration-300'
470
+ export const slideInFromBottom = 'animate-in slide-in-from-bottom duration-300'
471
+ export const slideInFromLeft = 'animate-in slide-in-from-left duration-300'
472
+ export const slideInFromRight = 'animate-in slide-in-from-right duration-300'
473
+ export const zoomIn = 'animate-in zoom-in-95 duration-300'
474
+ export const zoomOut = 'animate-out zoom-out-95 duration-300'
475
+
476
+ // Compound animations
477
+ export const modalEnter = cn(fadeIn, zoomIn, 'duration-200')
478
+ export const modalExit = cn(fadeOut, zoomOut, 'duration-200')
479
+ export const dropdownEnter = cn(fadeIn, slideInFromTop, 'duration-150')
480
+ export const dropdownExit = cn(fadeOut, 'slide-out-to-top', 'duration-150')
481
+
482
+ // components/ui/dialog.tsx
483
+ import * as DialogPrimitive from '@radix-ui/react-dialog'
484
+
485
+ const DialogOverlay = forwardRef<
486
+ React.ElementRef<typeof DialogPrimitive.Overlay>,
487
+ React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>
488
+ >(({ className, ...props }, ref) => (
489
+ <DialogPrimitive.Overlay
490
+ ref={ref}
491
+ className={cn(
492
+ 'fixed inset-0 z-50 bg-black/80',
493
+ 'data-[state=open]:animate-in data-[state=closed]:animate-out',
494
+ 'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0',
495
+ className
496
+ )}
497
+ {...props}
498
+ />
499
+ ))
500
+
501
+ const DialogContent = forwardRef<
502
+ React.ElementRef<typeof DialogPrimitive.Content>,
503
+ React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>
504
+ >(({ className, children, ...props }, ref) => (
505
+ <DialogPortal>
506
+ <DialogOverlay />
507
+ <DialogPrimitive.Content
508
+ ref={ref}
509
+ className={cn(
510
+ 'fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg',
511
+ 'data-[state=open]:animate-in data-[state=closed]:animate-out',
512
+ 'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0',
513
+ 'data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95',
514
+ 'data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%]',
515
+ 'data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%]',
516
+ 'sm:rounded-lg',
517
+ className
518
+ )}
519
+ {...props}
520
+ >
521
+ {children}
522
+ </DialogPrimitive.Content>
523
+ </DialogPortal>
524
+ ))
525
+ ```
526
+
527
+ ### Pattern 6: Dark Mode Implementation
528
+
529
+ ```typescript
530
+ // providers/ThemeProvider.tsx
531
+ 'use client'
532
+
533
+ import { createContext, useContext, useEffect, useState } from 'react'
534
+
535
+ type Theme = 'dark' | 'light' | 'system'
536
+
537
+ interface ThemeProviderProps {
538
+ children: React.ReactNode
539
+ defaultTheme?: Theme
540
+ storageKey?: string
541
+ }
542
+
543
+ interface ThemeContextType {
544
+ theme: Theme
545
+ setTheme: (theme: Theme) => void
546
+ resolvedTheme: 'dark' | 'light'
547
+ }
548
+
549
+ const ThemeContext = createContext<ThemeContextType | undefined>(undefined)
550
+
551
+ export function ThemeProvider({
552
+ children,
553
+ defaultTheme = 'system',
554
+ storageKey = 'theme',
555
+ }: ThemeProviderProps) {
556
+ const [theme, setTheme] = useState<Theme>(defaultTheme)
557
+ const [resolvedTheme, setResolvedTheme] = useState<'dark' | 'light'>('light')
558
+
559
+ useEffect(() => {
560
+ const stored = localStorage.getItem(storageKey) as Theme | null
561
+ if (stored) setTheme(stored)
562
+ }, [storageKey])
563
+
564
+ useEffect(() => {
565
+ const root = window.document.documentElement
566
+ root.classList.remove('light', 'dark')
567
+
568
+ let resolved: 'dark' | 'light'
569
+
570
+ if (theme === 'system') {
571
+ resolved = window.matchMedia('(prefers-color-scheme: dark)').matches
572
+ ? 'dark'
573
+ : 'light'
574
+ } else {
575
+ resolved = theme
576
+ }
577
+
578
+ root.classList.add(resolved)
579
+ setResolvedTheme(resolved)
580
+ }, [theme])
581
+
582
+ const value = {
583
+ theme,
584
+ setTheme: (newTheme: Theme) => {
585
+ localStorage.setItem(storageKey, newTheme)
586
+ setTheme(newTheme)
587
+ },
588
+ resolvedTheme,
589
+ }
590
+
591
+ return (
592
+ <ThemeContext.Provider value={value}>{children}</ThemeContext.Provider>
593
+ )
594
+ }
595
+
596
+ export const useTheme = () => {
597
+ const context = useContext(ThemeContext)
598
+ if (!context) throw new Error('useTheme must be used within ThemeProvider')
599
+ return context
600
+ }
601
+
602
+ // components/ThemeToggle.tsx
603
+ import { Moon, Sun } from 'lucide-react'
604
+ import { useTheme } from '@/providers/ThemeProvider'
605
+
606
+ export function ThemeToggle() {
607
+ const { resolvedTheme, setTheme } = useTheme()
608
+
609
+ return (
610
+ <Button
611
+ variant="ghost"
612
+ size="icon"
613
+ onClick={() => setTheme(resolvedTheme === 'dark' ? 'light' : 'dark')}
614
+ >
615
+ <Sun className="h-5 w-5 rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0" />
616
+ <Moon className="absolute h-5 w-5 rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100" />
617
+ <span className="sr-only">Toggle theme</span>
618
+ </Button>
619
+ )
620
+ }
621
+ ```
622
+
623
+ ## Utility Functions
624
+
625
+ ```typescript
626
+ // lib/utils.ts
627
+ import { type ClassValue, clsx } from 'clsx'
628
+ import { twMerge } from 'tailwind-merge'
629
+
630
+ export function cn(...inputs: ClassValue[]) {
631
+ return twMerge(clsx(inputs))
632
+ }
633
+
634
+ // Focus ring utility
635
+ export const focusRing = cn(
636
+ 'focus-visible:outline-none focus-visible:ring-2',
637
+ 'focus-visible:ring-ring focus-visible:ring-offset-2'
638
+ )
639
+
640
+ // Disabled utility
641
+ export const disabled = 'disabled:pointer-events-none disabled:opacity-50'
642
+ ```
643
+
644
+ ## Best Practices
645
+
646
+ ### Do's
647
+ - **Use CSS variables** - Enable runtime theming
648
+ - **Compose with CVA** - Type-safe variants
649
+ - **Use semantic colors** - `primary` not `blue-500`
650
+ - **Forward refs** - Enable composition
651
+ - **Add accessibility** - ARIA attributes, focus states
652
+
653
+ ### Don'ts
654
+ - **Don't use arbitrary values** - Extend theme instead
655
+ - **Don't nest @apply** - Hurts readability
656
+ - **Don't skip focus states** - Keyboard users need them
657
+ - **Don't hardcode colors** - Use semantic tokens
658
+ - **Don't forget dark mode** - Test both themes
659
+
660
+ ## Resources
661
+
662
+ - [Tailwind CSS Documentation](https://tailwindcss.com/docs)
663
+ - [CVA Documentation](https://cva.style/docs)
664
+ - [shadcn/ui](https://ui.shadcn.com/)
665
+ - [Radix Primitives](https://www.radix-ui.com/primitives)