@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,802 @@
1
+ # Code Explanation and Analysis Implementation Playbook
2
+
3
+ This file contains detailed patterns, checklists, and code samples referenced by the skill.
4
+
5
+ ## Instructions
6
+
7
+ ### 1. Code Comprehension Analysis
8
+
9
+ Analyze the code to determine complexity and structure:
10
+
11
+ **Code Complexity Assessment**
12
+ ```python
13
+ import ast
14
+ import re
15
+ from typing import Dict, List, Tuple
16
+
17
+ class CodeAnalyzer:
18
+ def analyze_complexity(self, code: str) -> Dict:
19
+ """
20
+ Analyze code complexity and structure
21
+ """
22
+ analysis = {
23
+ 'complexity_score': 0,
24
+ 'concepts': [],
25
+ 'patterns': [],
26
+ 'dependencies': [],
27
+ 'difficulty_level': 'beginner'
28
+ }
29
+
30
+ # Parse code structure
31
+ try:
32
+ tree = ast.parse(code)
33
+
34
+ # Analyze complexity metrics
35
+ analysis['metrics'] = {
36
+ 'lines_of_code': len(code.splitlines()),
37
+ 'cyclomatic_complexity': self._calculate_cyclomatic_complexity(tree),
38
+ 'nesting_depth': self._calculate_max_nesting(tree),
39
+ 'function_count': len([n for n in ast.walk(tree) if isinstance(n, ast.FunctionDef)]),
40
+ 'class_count': len([n for n in ast.walk(tree) if isinstance(n, ast.ClassDef)])
41
+ }
42
+
43
+ # Identify concepts used
44
+ analysis['concepts'] = self._identify_concepts(tree)
45
+
46
+ # Detect design patterns
47
+ analysis['patterns'] = self._detect_patterns(tree)
48
+
49
+ # Extract dependencies
50
+ analysis['dependencies'] = self._extract_dependencies(tree)
51
+
52
+ # Determine difficulty level
53
+ analysis['difficulty_level'] = self._assess_difficulty(analysis)
54
+
55
+ except SyntaxError as e:
56
+ analysis['parse_error'] = str(e)
57
+
58
+ return analysis
59
+
60
+ def _identify_concepts(self, tree) -> List[str]:
61
+ """
62
+ Identify programming concepts used in the code
63
+ """
64
+ concepts = []
65
+
66
+ for node in ast.walk(tree):
67
+ # Async/await
68
+ if isinstance(node, (ast.AsyncFunctionDef, ast.AsyncWith, ast.AsyncFor)):
69
+ concepts.append('asynchronous programming')
70
+
71
+ # Decorators
72
+ elif isinstance(node, ast.FunctionDef) and node.decorator_list:
73
+ concepts.append('decorators')
74
+
75
+ # Context managers
76
+ elif isinstance(node, ast.With):
77
+ concepts.append('context managers')
78
+
79
+ # Generators
80
+ elif isinstance(node, ast.Yield):
81
+ concepts.append('generators')
82
+
83
+ # List/Dict/Set comprehensions
84
+ elif isinstance(node, (ast.ListComp, ast.DictComp, ast.SetComp)):
85
+ concepts.append('comprehensions')
86
+
87
+ # Lambda functions
88
+ elif isinstance(node, ast.Lambda):
89
+ concepts.append('lambda functions')
90
+
91
+ # Exception handling
92
+ elif isinstance(node, ast.Try):
93
+ concepts.append('exception handling')
94
+
95
+ return list(set(concepts))
96
+ ```
97
+
98
+ ### 2. Visual Explanation Generation
99
+
100
+ Create visual representations of code flow:
101
+
102
+ **Flow Diagram Generation**
103
+ ```python
104
+ class VisualExplainer:
105
+ def generate_flow_diagram(self, code_structure):
106
+ """
107
+ Generate Mermaid diagram showing code flow
108
+ """
109
+ diagram = "```mermaid\nflowchart TD\n"
110
+
111
+ # Example: Function call flow
112
+ if code_structure['type'] == 'function_flow':
113
+ nodes = []
114
+ edges = []
115
+
116
+ for i, func in enumerate(code_structure['functions']):
117
+ node_id = f"F{i}"
118
+ nodes.append(f" {node_id}[{func['name']}]")
119
+
120
+ # Add function details
121
+ if func.get('parameters'):
122
+ nodes.append(f" {node_id}_params[/{', '.join(func['parameters'])}/]")
123
+ edges.append(f" {node_id}_params --> {node_id}")
124
+
125
+ # Add return value
126
+ if func.get('returns'):
127
+ nodes.append(f" {node_id}_return[{func['returns']}]")
128
+ edges.append(f" {node_id} --> {node_id}_return")
129
+
130
+ # Connect to called functions
131
+ for called in func.get('calls', []):
132
+ called_id = f"F{code_structure['function_map'][called]}"
133
+ edges.append(f" {node_id} --> {called_id}")
134
+
135
+ diagram += "\n".join(nodes) + "\n"
136
+ diagram += "\n".join(edges) + "\n"
137
+
138
+ diagram += "```"
139
+ return diagram
140
+
141
+ def generate_class_diagram(self, classes):
142
+ """
143
+ Generate UML-style class diagram
144
+ """
145
+ diagram = "```mermaid\nclassDiagram\n"
146
+
147
+ for cls in classes:
148
+ # Class definition
149
+ diagram += f" class {cls['name']} {{\n"
150
+
151
+ # Attributes
152
+ for attr in cls.get('attributes', []):
153
+ visibility = '+' if attr['public'] else '-'
154
+ diagram += f" {visibility}{attr['name']} : {attr['type']}\n"
155
+
156
+ # Methods
157
+ for method in cls.get('methods', []):
158
+ visibility = '+' if method['public'] else '-'
159
+ params = ', '.join(method.get('params', []))
160
+ diagram += f" {visibility}{method['name']}({params}) : {method['returns']}\n"
161
+
162
+ diagram += " }\n"
163
+
164
+ # Relationships
165
+ if cls.get('inherits'):
166
+ diagram += f" {cls['inherits']} <|-- {cls['name']}\n"
167
+
168
+ for composition in cls.get('compositions', []):
169
+ diagram += f" {cls['name']} *-- {composition}\n"
170
+
171
+ diagram += "```"
172
+ return diagram
173
+ ```
174
+
175
+ ### 3. Step-by-Step Explanation
176
+
177
+ Break down complex code into digestible steps:
178
+
179
+ **Progressive Explanation**
180
+ ```python
181
+ def generate_step_by_step_explanation(self, code, analysis):
182
+ """
183
+ Create progressive explanation from simple to complex
184
+ """
185
+ explanation = {
186
+ 'overview': self._generate_overview(code, analysis),
187
+ 'steps': [],
188
+ 'deep_dive': [],
189
+ 'examples': []
190
+ }
191
+
192
+ # Level 1: High-level overview
193
+ explanation['overview'] = f"""
194
+ ## What This Code Does
195
+
196
+ {self._summarize_purpose(code, analysis)}
197
+
198
+ **Key Concepts**: {', '.join(analysis['concepts'])}
199
+ **Difficulty Level**: {analysis['difficulty_level'].capitalize()}
200
+ """
201
+
202
+ # Level 2: Step-by-step breakdown
203
+ if analysis.get('functions'):
204
+ for i, func in enumerate(analysis['functions']):
205
+ step = f"""
206
+ ### Step {i+1}: {func['name']}
207
+
208
+ **Purpose**: {self._explain_function_purpose(func)}
209
+
210
+ **How it works**:
211
+ """
212
+ # Break down function logic
213
+ for j, logic_step in enumerate(self._analyze_function_logic(func)):
214
+ step += f"{j+1}. {logic_step}\n"
215
+
216
+ # Add visual flow if complex
217
+ if func['complexity'] > 5:
218
+ step += f"\n{self._generate_function_flow(func)}\n"
219
+
220
+ explanation['steps'].append(step)
221
+
222
+ # Level 3: Deep dive into complex parts
223
+ for concept in analysis['concepts']:
224
+ deep_dive = self._explain_concept(concept, code)
225
+ explanation['deep_dive'].append(deep_dive)
226
+
227
+ return explanation
228
+
229
+ def _explain_concept(self, concept, code):
230
+ """
231
+ Explain programming concept with examples
232
+ """
233
+ explanations = {
234
+ 'decorators': '''
235
+ ## Understanding Decorators
236
+
237
+ Decorators are a way to modify or enhance functions without changing their code directly.
238
+
239
+ **Simple Analogy**: Think of a decorator like gift wrapping - it adds something extra around the original item.
240
+
241
+ **How it works**:
242
+ ```python
243
+ # This decorator:
244
+ @timer
245
+ def slow_function():
246
+ time.sleep(1)
247
+
248
+ # Is equivalent to:
249
+ def slow_function():
250
+ time.sleep(1)
251
+ slow_function = timer(slow_function)
252
+ ```
253
+
254
+ **In this code**: The decorator is used to {specific_use_in_code}
255
+ ''',
256
+ 'generators': '''
257
+ ## Understanding Generators
258
+
259
+ Generators produce values one at a time, saving memory by not creating all values at once.
260
+
261
+ **Simple Analogy**: Like a ticket dispenser that gives one ticket at a time, rather than printing all tickets upfront.
262
+
263
+ **How it works**:
264
+ ```python
265
+ # Generator function
266
+ def count_up_to(n):
267
+ i = 0
268
+ while i < n:
269
+ yield i # Produces one value and pauses
270
+ i += 1
271
+
272
+ # Using the generator
273
+ for num in count_up_to(5):
274
+ print(num) # Prints 0, 1, 2, 3, 4
275
+ ```
276
+
277
+ **In this code**: The generator is used to {specific_use_in_code}
278
+ '''
279
+ }
280
+
281
+ return explanations.get(concept, f"Explanation for {concept}")
282
+ ```
283
+
284
+ ### 4. Algorithm Visualization
285
+
286
+ Visualize algorithm execution:
287
+
288
+ **Algorithm Step Visualization**
289
+ ```python
290
+ class AlgorithmVisualizer:
291
+ def visualize_sorting_algorithm(self, algorithm_name, array):
292
+ """
293
+ Create step-by-step visualization of sorting algorithm
294
+ """
295
+ steps = []
296
+
297
+ if algorithm_name == 'bubble_sort':
298
+ steps.append("""
299
+ ## Bubble Sort Visualization
300
+
301
+ **Initial Array**: [5, 2, 8, 1, 9]
302
+
303
+ ### How Bubble Sort Works:
304
+ 1. Compare adjacent elements
305
+ 2. Swap if they're in wrong order
306
+ 3. Repeat until no swaps needed
307
+
308
+ ### Step-by-Step Execution:
309
+ """)
310
+
311
+ # Simulate bubble sort with visualization
312
+ arr = array.copy()
313
+ n = len(arr)
314
+
315
+ for i in range(n):
316
+ swapped = False
317
+ step_viz = f"\n**Pass {i+1}**:\n"
318
+
319
+ for j in range(0, n-i-1):
320
+ # Show comparison
321
+ step_viz += f"Compare [{arr[j]}] and [{arr[j+1]}]: "
322
+
323
+ if arr[j] > arr[j+1]:
324
+ arr[j], arr[j+1] = arr[j+1], arr[j]
325
+ step_viz += f"Swap → {arr}\n"
326
+ swapped = True
327
+ else:
328
+ step_viz += "No swap needed\n"
329
+
330
+ steps.append(step_viz)
331
+
332
+ if not swapped:
333
+ steps.append(f"\n✅ Array is sorted: {arr}")
334
+ break
335
+
336
+ return '\n'.join(steps)
337
+
338
+ def visualize_recursion(self, func_name, example_input):
339
+ """
340
+ Visualize recursive function calls
341
+ """
342
+ viz = f"""
343
+ ## Recursion Visualization: {func_name}
344
+
345
+ ### Call Stack Visualization:
346
+ ```
347
+ {func_name}({example_input})
348
+
349
+ ├─> Base case check: {example_input} == 0? No
350
+ ├─> Recursive call: {func_name}({example_input - 1})
351
+ │ │
352
+ │ ├─> Base case check: {example_input - 1} == 0? No
353
+ │ ├─> Recursive call: {func_name}({example_input - 2})
354
+ │ │ │
355
+ │ │ ├─> Base case check: 1 == 0? No
356
+ │ │ ├─> Recursive call: {func_name}(0)
357
+ │ │ │ │
358
+ │ │ │ └─> Base case: Return 1
359
+ │ │ │
360
+ │ │ └─> Return: 1 * 1 = 1
361
+ │ │
362
+ │ └─> Return: 2 * 1 = 2
363
+
364
+ └─> Return: 3 * 2 = 6
365
+ ```
366
+
367
+ **Final Result**: {func_name}({example_input}) = 6
368
+ """
369
+ return viz
370
+ ```
371
+
372
+ ### 5. Interactive Examples
373
+
374
+ Generate interactive examples for better understanding:
375
+
376
+ **Code Playground Examples**
377
+ ```python
378
+ def generate_interactive_examples(self, concept):
379
+ """
380
+ Create runnable examples for concepts
381
+ """
382
+ examples = {
383
+ 'error_handling': '''
384
+ ## Try It Yourself: Error Handling
385
+
386
+ ### Example 1: Basic Try-Except
387
+ ```python
388
+ def safe_divide(a, b):
389
+ try:
390
+ result = a / b
391
+ print(f"{a} / {b} = {result}")
392
+ return result
393
+ except ZeroDivisionError:
394
+ print("Error: Cannot divide by zero!")
395
+ return None
396
+ except TypeError:
397
+ print("Error: Please provide numbers only!")
398
+ return None
399
+ finally:
400
+ print("Division attempt completed")
401
+
402
+ # Test cases - try these:
403
+ safe_divide(10, 2) # Success case
404
+ safe_divide(10, 0) # Division by zero
405
+ safe_divide(10, "2") # Type error
406
+ ```
407
+
408
+ ### Example 2: Custom Exceptions
409
+ ```python
410
+ class ValidationError(Exception):
411
+ """Custom exception for validation errors"""
412
+ pass
413
+
414
+ def validate_age(age):
415
+ try:
416
+ age = int(age)
417
+ if age < 0:
418
+ raise ValidationError("Age cannot be negative")
419
+ if age > 150:
420
+ raise ValidationError("Age seems unrealistic")
421
+ return age
422
+ except ValueError:
423
+ raise ValidationError("Age must be a number")
424
+
425
+ # Try these examples:
426
+ try:
427
+ validate_age(25) # Valid
428
+ validate_age(-5) # Negative age
429
+ validate_age("abc") # Not a number
430
+ except ValidationError as e:
431
+ print(f"Validation failed: {e}")
432
+ ```
433
+
434
+ ### Exercise: Implement Your Own
435
+ Try implementing a function that:
436
+ 1. Takes a list of numbers
437
+ 2. Returns their average
438
+ 3. Handles empty lists
439
+ 4. Handles non-numeric values
440
+ 5. Uses appropriate exception handling
441
+ ''',
442
+ 'async_programming': '''
443
+ ## Try It Yourself: Async Programming
444
+
445
+ ### Example 1: Basic Async/Await
446
+ ```python
447
+ import asyncio
448
+ import time
449
+
450
+ async def slow_operation(name, duration):
451
+ print(f"{name} started...")
452
+ await asyncio.sleep(duration)
453
+ print(f"{name} completed after {duration}s")
454
+ return f"{name} result"
455
+
456
+ async def main():
457
+ # Sequential execution (slow)
458
+ start = time.time()
459
+ await slow_operation("Task 1", 2)
460
+ await slow_operation("Task 2", 2)
461
+ print(f"Sequential time: {time.time() - start:.2f}s")
462
+
463
+ # Concurrent execution (fast)
464
+ start = time.time()
465
+ results = await asyncio.gather(
466
+ slow_operation("Task 3", 2),
467
+ slow_operation("Task 4", 2)
468
+ )
469
+ print(f"Concurrent time: {time.time() - start:.2f}s")
470
+ print(f"Results: {results}")
471
+
472
+ # Run it:
473
+ asyncio.run(main())
474
+ ```
475
+
476
+ ### Example 2: Real-world Async Pattern
477
+ ```python
478
+ async def fetch_data(url):
479
+ """Simulate API call"""
480
+ await asyncio.sleep(1) # Simulate network delay
481
+ return f"Data from {url}"
482
+
483
+ async def process_urls(urls):
484
+ tasks = [fetch_data(url) for url in urls]
485
+ results = await asyncio.gather(*tasks)
486
+ return results
487
+
488
+ # Try with different URLs:
489
+ urls = ["api.example.com/1", "api.example.com/2", "api.example.com/3"]
490
+ results = asyncio.run(process_urls(urls))
491
+ print(results)
492
+ ```
493
+ '''
494
+ }
495
+
496
+ return examples.get(concept, "No example available")
497
+ ```
498
+
499
+ ### 6. Design Pattern Explanation
500
+
501
+ Explain design patterns found in code:
502
+
503
+ **Pattern Recognition and Explanation**
504
+ ```python
505
+ class DesignPatternExplainer:
506
+ def explain_pattern(self, pattern_name, code_example):
507
+ """
508
+ Explain design pattern with diagrams and examples
509
+ """
510
+ patterns = {
511
+ 'singleton': '''
512
+ ## Singleton Pattern
513
+
514
+ ### What is it?
515
+ The Singleton pattern ensures a class has only one instance and provides global access to it.
516
+
517
+ ### When to use it?
518
+ - Database connections
519
+ - Configuration managers
520
+ - Logging services
521
+ - Cache managers
522
+
523
+ ### Visual Representation:
524
+ ```mermaid
525
+ classDiagram
526
+ class Singleton {
527
+ -instance: Singleton
528
+ -__init__()
529
+ +getInstance(): Singleton
530
+ }
531
+ Singleton --> Singleton : returns same instance
532
+ ```
533
+
534
+ ### Implementation in this code:
535
+ {code_analysis}
536
+
537
+ ### Benefits:
538
+ ✅ Controlled access to single instance
539
+ ✅ Reduced namespace pollution
540
+ ✅ Permits refinement of operations
541
+
542
+ ### Drawbacks:
543
+ ❌ Can make unit testing difficult
544
+ ❌ Violates Single Responsibility Principle
545
+ ❌ Can hide dependencies
546
+
547
+ ### Alternative Approaches:
548
+ 1. Dependency Injection
549
+ 2. Module-level singleton
550
+ 3. Borg pattern
551
+ ''',
552
+ 'observer': '''
553
+ ## Observer Pattern
554
+
555
+ ### What is it?
556
+ The Observer pattern defines a one-to-many dependency between objects so that when one object changes state, all dependents are notified.
557
+
558
+ ### When to use it?
559
+ - Event handling systems
560
+ - Model-View architectures
561
+ - Distributed event handling
562
+
563
+ ### Visual Representation:
564
+ ```mermaid
565
+ classDiagram
566
+ class Subject {
567
+ +attach(Observer)
568
+ +detach(Observer)
569
+ +notify()
570
+ }
571
+ class Observer {
572
+ +update()
573
+ }
574
+ class ConcreteSubject {
575
+ -state
576
+ +getState()
577
+ +setState()
578
+ }
579
+ class ConcreteObserver {
580
+ -subject
581
+ +update()
582
+ }
583
+ Subject <|-- ConcreteSubject
584
+ Observer <|-- ConcreteObserver
585
+ ConcreteSubject --> Observer : notifies
586
+ ConcreteObserver --> ConcreteSubject : observes
587
+ ```
588
+
589
+ ### Implementation in this code:
590
+ {code_analysis}
591
+
592
+ ### Real-world Example:
593
+ ```python
594
+ # Newsletter subscription system
595
+ class Newsletter:
596
+ def __init__(self):
597
+ self._subscribers = []
598
+ self._latest_article = None
599
+
600
+ def subscribe(self, subscriber):
601
+ self._subscribers.append(subscriber)
602
+
603
+ def unsubscribe(self, subscriber):
604
+ self._subscribers.remove(subscriber)
605
+
606
+ def publish_article(self, article):
607
+ self._latest_article = article
608
+ self._notify_subscribers()
609
+
610
+ def _notify_subscribers(self):
611
+ for subscriber in self._subscribers:
612
+ subscriber.update(self._latest_article)
613
+
614
+ class EmailSubscriber:
615
+ def __init__(self, email):
616
+ self.email = email
617
+
618
+ def update(self, article):
619
+ print(f"Sending email to {self.email}: New article - {article}")
620
+ ```
621
+ '''
622
+ }
623
+
624
+ return patterns.get(pattern_name, "Pattern explanation not available")
625
+ ```
626
+
627
+ ### 7. Common Pitfalls and Best Practices
628
+
629
+ Highlight potential issues and improvements:
630
+
631
+ **Code Review Insights**
632
+ ```python
633
+ def analyze_common_pitfalls(self, code):
634
+ """
635
+ Identify common mistakes and suggest improvements
636
+ """
637
+ issues = []
638
+
639
+ # Check for common Python pitfalls
640
+ pitfall_patterns = [
641
+ {
642
+ 'pattern': r'except:',
643
+ 'issue': 'Bare except clause',
644
+ 'severity': 'high',
645
+ 'explanation': '''
646
+ ## ⚠️ Bare Except Clause
647
+
648
+ **Problem**: `except:` catches ALL exceptions, including system exits and keyboard interrupts.
649
+
650
+ **Why it's bad**:
651
+ - Hides programming errors
652
+ - Makes debugging difficult
653
+ - Can catch exceptions you didn't intend to handle
654
+
655
+ **Better approach**:
656
+ ```python
657
+ # Bad
658
+ try:
659
+ risky_operation()
660
+ except:
661
+ print("Something went wrong")
662
+
663
+ # Good
664
+ try:
665
+ risky_operation()
666
+ except (ValueError, TypeError) as e:
667
+ print(f"Expected error: {e}")
668
+ except Exception as e:
669
+ logger.error(f"Unexpected error: {e}")
670
+ raise
671
+ ```
672
+ '''
673
+ },
674
+ {
675
+ 'pattern': r'def.*\(\s*\):.*global',
676
+ 'issue': 'Global variable usage',
677
+ 'severity': 'medium',
678
+ 'explanation': '''
679
+ ## ⚠️ Global Variable Usage
680
+
681
+ **Problem**: Using global variables makes code harder to test and reason about.
682
+
683
+ **Better approaches**:
684
+ 1. Pass as parameter
685
+ 2. Use class attributes
686
+ 3. Use dependency injection
687
+ 4. Return values instead
688
+
689
+ **Example refactor**:
690
+ ```python
691
+ # Bad
692
+ count = 0
693
+ def increment():
694
+ global count
695
+ count += 1
696
+
697
+ # Good
698
+ class Counter:
699
+ def __init__(self):
700
+ self.count = 0
701
+
702
+ def increment(self):
703
+ self.count += 1
704
+ return self.count
705
+ ```
706
+ '''
707
+ }
708
+ ]
709
+
710
+ for pitfall in pitfall_patterns:
711
+ if re.search(pitfall['pattern'], code):
712
+ issues.append(pitfall)
713
+
714
+ return issues
715
+ ```
716
+
717
+ ### 8. Learning Path Recommendations
718
+
719
+ Suggest resources for deeper understanding:
720
+
721
+ **Personalized Learning Path**
722
+ ```python
723
+ def generate_learning_path(self, analysis):
724
+ """
725
+ Create personalized learning recommendations
726
+ """
727
+ learning_path = {
728
+ 'current_level': analysis['difficulty_level'],
729
+ 'identified_gaps': [],
730
+ 'recommended_topics': [],
731
+ 'resources': []
732
+ }
733
+
734
+ # Identify knowledge gaps
735
+ if 'async' in analysis['concepts'] and analysis['difficulty_level'] == 'beginner':
736
+ learning_path['identified_gaps'].append('Asynchronous programming fundamentals')
737
+ learning_path['recommended_topics'].extend([
738
+ 'Event loops',
739
+ 'Coroutines vs threads',
740
+ 'Async/await syntax',
741
+ 'Concurrent programming patterns'
742
+ ])
743
+
744
+ # Add resources
745
+ learning_path['resources'] = [
746
+ {
747
+ 'topic': 'Async Programming',
748
+ 'type': 'tutorial',
749
+ 'title': 'Async IO in Python: A Complete Walkthrough',
750
+ 'url': 'https://realpython.com/async-io-python/',
751
+ 'difficulty': 'intermediate',
752
+ 'time_estimate': '45 minutes'
753
+ },
754
+ {
755
+ 'topic': 'Design Patterns',
756
+ 'type': 'book',
757
+ 'title': 'Head First Design Patterns',
758
+ 'difficulty': 'beginner-friendly',
759
+ 'format': 'visual learning'
760
+ }
761
+ ]
762
+
763
+ # Create structured learning plan
764
+ learning_path['structured_plan'] = f"""
765
+ ## Your Personalized Learning Path
766
+
767
+ ### Week 1-2: Fundamentals
768
+ - Review basic concepts: {', '.join(learning_path['recommended_topics'][:2])}
769
+ - Complete exercises on each topic
770
+ - Build a small project using these concepts
771
+
772
+ ### Week 3-4: Applied Learning
773
+ - Study the patterns in this codebase
774
+ - Refactor a simple version yourself
775
+ - Compare your approach with the original
776
+
777
+ ### Week 5-6: Advanced Topics
778
+ - Explore edge cases and optimizations
779
+ - Learn about alternative approaches
780
+ - Contribute to open source projects using these patterns
781
+
782
+ ### Practice Projects:
783
+ 1. **Beginner**: {self._suggest_beginner_project(analysis)}
784
+ 2. **Intermediate**: {self._suggest_intermediate_project(analysis)}
785
+ 3. **Advanced**: {self._suggest_advanced_project(analysis)}
786
+ """
787
+
788
+ return learning_path
789
+ ```
790
+
791
+ ## Output Format
792
+
793
+ 1. **Complexity Analysis**: Overview of code complexity and concepts used
794
+ 2. **Visual Diagrams**: Flow charts, class diagrams, and execution visualizations
795
+ 3. **Step-by-Step Breakdown**: Progressive explanation from simple to complex
796
+ 4. **Interactive Examples**: Runnable code samples to experiment with
797
+ 5. **Common Pitfalls**: Issues to avoid with explanations
798
+ 6. **Best Practices**: Improved approaches and patterns
799
+ 7. **Learning Resources**: Curated resources for deeper understanding
800
+ 8. **Practice Exercises**: Hands-on challenges to reinforce learning
801
+
802
+ Focus on making complex code accessible through clear explanations, visual aids, and practical examples that build understanding progressively.