@hivehub/rulebook 4.1.0 → 4.2.1

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 (335) hide show
  1. package/.claude/commands/continue.md +33 -33
  2. package/.claude/commands/ralph-config.md +112 -112
  3. package/.claude/commands/ralph-history.md +110 -110
  4. package/.claude/commands/ralph-init.md +72 -72
  5. package/.claude/commands/ralph-pause-resume.md +105 -105
  6. package/.claude/commands/ralph-run.md +101 -101
  7. package/.claude/commands/ralph-status.md +76 -76
  8. package/.claude/commands/rulebook-memory-save.md +48 -48
  9. package/.claude/commands/rulebook-memory-search.md +47 -47
  10. package/.claude/commands/rulebook-task-apply.md +67 -67
  11. package/.claude/commands/rulebook-task-archive.md +70 -70
  12. package/.claude/commands/rulebook-task-create.md +93 -93
  13. package/.claude/commands/rulebook-task-list.md +42 -42
  14. package/.claude/commands/rulebook-task-show.md +52 -52
  15. package/.claude/commands/rulebook-task-validate.md +53 -53
  16. package/.claude-plugin/marketplace.json +28 -28
  17. package/.claude-plugin/plugin.json +8 -8
  18. package/README.md +137 -1
  19. package/dist/cli/commands.d.ts +18 -6
  20. package/dist/cli/commands.d.ts.map +1 -1
  21. package/dist/cli/commands.js +727 -406
  22. package/dist/cli/commands.js.map +1 -1
  23. package/dist/core/claude-mcp.d.ts +4 -2
  24. package/dist/core/claude-mcp.d.ts.map +1 -1
  25. package/dist/core/claude-mcp.js +14 -9
  26. package/dist/core/claude-mcp.js.map +1 -1
  27. package/dist/core/generator.d.ts.map +1 -1
  28. package/dist/core/generator.js +13 -0
  29. package/dist/core/generator.js.map +1 -1
  30. package/dist/core/indexer/background-indexer.d.ts.map +1 -1
  31. package/dist/core/indexer/background-indexer.js +26 -5
  32. package/dist/core/indexer/background-indexer.js.map +1 -1
  33. package/dist/core/indexer/file-parser.d.ts.map +1 -1
  34. package/dist/core/indexer/file-parser.js +1 -1
  35. package/dist/core/indexer/file-parser.js.map +1 -1
  36. package/dist/core/indexer/indexer-types.d.ts.map +1 -1
  37. package/dist/core/workspace/legacy-migrator.d.ts +29 -0
  38. package/dist/core/workspace/legacy-migrator.d.ts.map +1 -0
  39. package/dist/core/workspace/legacy-migrator.js +142 -0
  40. package/dist/core/workspace/legacy-migrator.js.map +1 -0
  41. package/dist/core/workspace/project-worker.d.ts +49 -0
  42. package/dist/core/workspace/project-worker.d.ts.map +1 -0
  43. package/dist/core/workspace/project-worker.js +108 -0
  44. package/dist/core/workspace/project-worker.js.map +1 -0
  45. package/dist/core/workspace/workspace-manager.d.ts +90 -0
  46. package/dist/core/workspace/workspace-manager.d.ts.map +1 -0
  47. package/dist/core/workspace/workspace-manager.js +347 -0
  48. package/dist/core/workspace/workspace-manager.js.map +1 -0
  49. package/dist/core/workspace/workspace-types.d.ts +37 -0
  50. package/dist/core/workspace/workspace-types.d.ts.map +1 -0
  51. package/dist/core/workspace/workspace-types.js +8 -0
  52. package/dist/core/workspace/workspace-types.js.map +1 -0
  53. package/dist/index.js +43 -7
  54. package/dist/index.js.map +1 -1
  55. package/dist/mcp/rulebook-server.d.ts.map +1 -1
  56. package/dist/mcp/rulebook-server.js +367 -100
  57. package/dist/mcp/rulebook-server.js.map +1 -1
  58. package/dist/memory/memory-manager.js +2 -2
  59. package/dist/memory/memory-manager.js.map +1 -1
  60. package/dist/memory/memory-search.js.map +1 -1
  61. package/dist/memory/memory-store.d.ts.map +1 -1
  62. package/dist/memory/memory-store.js +1 -1
  63. package/dist/memory/memory-store.js.map +1 -1
  64. package/dist/types.d.ts +1 -0
  65. package/dist/types.d.ts.map +1 -1
  66. package/package.json +22 -21
  67. package/templates/agents/implementer.md +35 -35
  68. package/templates/agents/researcher.md +34 -34
  69. package/templates/agents/team-lead.md +34 -34
  70. package/templates/agents/tester.md +42 -42
  71. package/templates/ci/rulebook-review.yml +26 -26
  72. package/templates/cli/AIDER.md +49 -49
  73. package/templates/cli/AMAZON_Q.md +25 -25
  74. package/templates/cli/AUGGIE.md +32 -32
  75. package/templates/cli/CLAUDE.md +117 -117
  76. package/templates/cli/CLINE.md +99 -99
  77. package/templates/cli/CODEBUDDY.md +20 -20
  78. package/templates/cli/CODEIUM.md +20 -20
  79. package/templates/cli/CODEX.md +21 -21
  80. package/templates/cli/CONTINUE.md +34 -34
  81. package/templates/cli/CURSOR_CLI.md +62 -62
  82. package/templates/cli/FACTORY.md +18 -18
  83. package/templates/cli/GEMINI.md +35 -35
  84. package/templates/cli/KILOCODE.md +18 -18
  85. package/templates/cli/OPENCODE.md +18 -18
  86. package/templates/cli/_GENERIC_TEMPLATE.md +29 -29
  87. package/templates/commands/rulebook-memory-save.md +48 -48
  88. package/templates/commands/rulebook-memory-search.md +47 -47
  89. package/templates/commands/rulebook-task-apply.md +67 -67
  90. package/templates/commands/rulebook-task-archive.md +94 -94
  91. package/templates/commands/rulebook-task-create.md +93 -93
  92. package/templates/commands/rulebook-task-list.md +42 -42
  93. package/templates/commands/rulebook-task-show.md +52 -52
  94. package/templates/commands/rulebook-task-validate.md +53 -53
  95. package/templates/core/AGENTS_LEAN.md +25 -25
  96. package/templates/core/AGENTS_OVERRIDE.md +16 -16
  97. package/templates/core/AGENT_AUTOMATION.md +288 -288
  98. package/templates/core/DAG.md +304 -304
  99. package/templates/core/DOCUMENTATION_RULES.md +36 -36
  100. package/templates/core/MULTI_AGENT.md +74 -74
  101. package/templates/core/PLANS.md +28 -28
  102. package/templates/core/QUALITY_ENFORCEMENT.md +68 -68
  103. package/templates/core/RALPH.md +471 -471
  104. package/templates/core/RULEBOOK.md +1935 -1935
  105. package/templates/core/WORKSPACE.md +69 -0
  106. package/templates/frameworks/ANGULAR.md +36 -36
  107. package/templates/frameworks/DJANGO.md +83 -83
  108. package/templates/frameworks/ELECTRON.md +147 -147
  109. package/templates/frameworks/FLASK.md +38 -38
  110. package/templates/frameworks/FLUTTER.md +55 -55
  111. package/templates/frameworks/JQUERY.md +32 -32
  112. package/templates/frameworks/LARAVEL.md +38 -38
  113. package/templates/frameworks/NESTJS.md +43 -43
  114. package/templates/frameworks/NEXTJS.md +127 -127
  115. package/templates/frameworks/NUXT.md +40 -40
  116. package/templates/frameworks/RAILS.md +66 -66
  117. package/templates/frameworks/REACT.md +38 -38
  118. package/templates/frameworks/REACT_NATIVE.md +47 -47
  119. package/templates/frameworks/SPRING.md +39 -39
  120. package/templates/frameworks/SYMFONY.md +36 -36
  121. package/templates/frameworks/VUE.md +36 -36
  122. package/templates/frameworks/ZEND.md +35 -35
  123. package/templates/git/CI_CD_PATTERNS.md +661 -661
  124. package/templates/git/GITHUB_ACTIONS.md +728 -728
  125. package/templates/git/GITLAB_CI.md +730 -730
  126. package/templates/git/GIT_WORKFLOW.md +1157 -1157
  127. package/templates/git/SECRETS_MANAGEMENT.md +585 -585
  128. package/templates/hooks/COMMIT_MSG.md +530 -530
  129. package/templates/hooks/POST_CHECKOUT.md +546 -546
  130. package/templates/hooks/PREPARE_COMMIT_MSG.md +619 -619
  131. package/templates/hooks/PRE_COMMIT.md +414 -414
  132. package/templates/hooks/PRE_PUSH.md +601 -601
  133. package/templates/ides/CONTINUE_RULES.md +16 -16
  134. package/templates/ides/COPILOT.md +37 -37
  135. package/templates/ides/COPILOT_INSTRUCTIONS.md +23 -23
  136. package/templates/ides/CURSOR.md +43 -43
  137. package/templates/ides/GEMINI_RULES.md +17 -17
  138. package/templates/ides/JETBRAINS_AI.md +35 -35
  139. package/templates/ides/REPLIT.md +36 -36
  140. package/templates/ides/TABNINE.md +29 -29
  141. package/templates/ides/VSCODE.md +40 -40
  142. package/templates/ides/WINDSURF.md +36 -36
  143. package/templates/ides/WINDSURF_RULES.md +14 -14
  144. package/templates/ides/ZED.md +32 -32
  145. package/templates/ides/cursor-mdc/go.mdc +24 -24
  146. package/templates/ides/cursor-mdc/python.mdc +24 -24
  147. package/templates/ides/cursor-mdc/quality.mdc +25 -25
  148. package/templates/ides/cursor-mdc/ralph.mdc +39 -39
  149. package/templates/ides/cursor-mdc/rulebook.mdc +38 -38
  150. package/templates/ides/cursor-mdc/rust.mdc +24 -24
  151. package/templates/ides/cursor-mdc/typescript.mdc +25 -25
  152. package/templates/languages/C.md +333 -333
  153. package/templates/languages/CPP.md +743 -743
  154. package/templates/languages/CSHARP.md +417 -417
  155. package/templates/languages/ELIXIR.md +454 -454
  156. package/templates/languages/ERLANG.md +361 -361
  157. package/templates/languages/GO.md +645 -645
  158. package/templates/languages/HASKELL.md +177 -177
  159. package/templates/languages/JAVA.md +607 -607
  160. package/templates/languages/JAVASCRIPT.md +631 -631
  161. package/templates/languages/JULIA.md +97 -97
  162. package/templates/languages/KOTLIN.md +511 -511
  163. package/templates/languages/LISP.md +100 -100
  164. package/templates/languages/LUA.md +74 -74
  165. package/templates/languages/OBJECTIVEC.md +90 -90
  166. package/templates/languages/PHP.md +416 -416
  167. package/templates/languages/PYTHON.md +682 -682
  168. package/templates/languages/RUBY.md +421 -421
  169. package/templates/languages/RUST.md +477 -477
  170. package/templates/languages/SAS.md +73 -73
  171. package/templates/languages/SCALA.md +348 -348
  172. package/templates/languages/SOLIDITY.md +580 -580
  173. package/templates/languages/SQL.md +137 -137
  174. package/templates/languages/SWIFT.md +466 -466
  175. package/templates/languages/TYPESCRIPT.md +591 -591
  176. package/templates/languages/ZIG.md +265 -265
  177. package/templates/modules/ATLASSIAN.md +255 -255
  178. package/templates/modules/CONTEXT7.md +54 -54
  179. package/templates/modules/FIGMA.md +267 -267
  180. package/templates/modules/GITHUB_MCP.md +64 -64
  181. package/templates/modules/GRAFANA.md +328 -328
  182. package/templates/modules/MEMORY.md +126 -126
  183. package/templates/modules/NOTION.md +247 -247
  184. package/templates/modules/PLAYWRIGHT.md +90 -90
  185. package/templates/modules/RULEBOOK_MCP.md +156 -156
  186. package/templates/modules/SERENA.md +337 -337
  187. package/templates/modules/SUPABASE.md +223 -223
  188. package/templates/modules/SYNAP.md +69 -69
  189. package/templates/modules/VECTORIZER.md +63 -63
  190. package/templates/modules/sequential-thinking.md +42 -42
  191. package/templates/ralph/ralph-history.bat +4 -4
  192. package/templates/ralph/ralph-history.sh +5 -5
  193. package/templates/ralph/ralph-init.bat +5 -5
  194. package/templates/ralph/ralph-init.sh +5 -5
  195. package/templates/ralph/ralph-pause.bat +5 -5
  196. package/templates/ralph/ralph-pause.sh +5 -5
  197. package/templates/ralph/ralph-run.bat +5 -5
  198. package/templates/ralph/ralph-run.sh +5 -5
  199. package/templates/ralph/ralph-status.bat +4 -4
  200. package/templates/ralph/ralph-status.sh +5 -5
  201. package/templates/services/AZURE_BLOB.md +184 -184
  202. package/templates/services/CASSANDRA.md +239 -239
  203. package/templates/services/DATADOG.md +26 -26
  204. package/templates/services/DOCKER.md +124 -124
  205. package/templates/services/DOCKER_COMPOSE.md +168 -168
  206. package/templates/services/DYNAMODB.md +308 -308
  207. package/templates/services/ELASTICSEARCH.md +347 -347
  208. package/templates/services/GCS.md +178 -178
  209. package/templates/services/HELM.md +194 -194
  210. package/templates/services/INFLUXDB.md +265 -265
  211. package/templates/services/KAFKA.md +341 -341
  212. package/templates/services/KUBERNETES.md +208 -208
  213. package/templates/services/MARIADB.md +183 -183
  214. package/templates/services/MEMCACHED.md +242 -242
  215. package/templates/services/MINIO.md +201 -201
  216. package/templates/services/MONGODB.md +268 -268
  217. package/templates/services/MYSQL.md +358 -358
  218. package/templates/services/NEO4J.md +247 -247
  219. package/templates/services/OPENTELEMETRY.md +25 -25
  220. package/templates/services/ORACLE.md +290 -290
  221. package/templates/services/PINO.md +24 -24
  222. package/templates/services/POSTGRESQL.md +326 -326
  223. package/templates/services/PROMETHEUS.md +33 -33
  224. package/templates/services/RABBITMQ.md +286 -286
  225. package/templates/services/REDIS.md +292 -292
  226. package/templates/services/S3.md +298 -298
  227. package/templates/services/SENTRY.md +23 -23
  228. package/templates/services/SQLITE.md +294 -294
  229. package/templates/services/SQLSERVER.md +294 -294
  230. package/templates/services/WINSTON.md +30 -30
  231. package/templates/skills/cli/aider/SKILL.md +59 -59
  232. package/templates/skills/cli/amazon-q/SKILL.md +35 -35
  233. package/templates/skills/cli/auggie/SKILL.md +42 -42
  234. package/templates/skills/cli/claude/SKILL.md +42 -42
  235. package/templates/skills/cli/cline/SKILL.md +42 -42
  236. package/templates/skills/cli/codebuddy/SKILL.md +30 -30
  237. package/templates/skills/cli/codeium/SKILL.md +30 -30
  238. package/templates/skills/cli/codex/SKILL.md +31 -31
  239. package/templates/skills/cli/continue/SKILL.md +44 -44
  240. package/templates/skills/cli/cursor-cli/SKILL.md +38 -38
  241. package/templates/skills/cli/factory/SKILL.md +28 -28
  242. package/templates/skills/cli/gemini/SKILL.md +45 -45
  243. package/templates/skills/cli/kilocode/SKILL.md +28 -28
  244. package/templates/skills/cli/opencode/SKILL.md +28 -28
  245. package/templates/skills/core/agent-automation/SKILL.md +194 -194
  246. package/templates/skills/core/dag/SKILL.md +314 -314
  247. package/templates/skills/core/documentation-rules/SKILL.md +46 -46
  248. package/templates/skills/core/quality-enforcement/SKILL.md +78 -78
  249. package/templates/skills/core/rulebook/SKILL.md +176 -176
  250. package/templates/skills/frameworks/angular/SKILL.md +46 -46
  251. package/templates/skills/frameworks/django/SKILL.md +93 -93
  252. package/templates/skills/frameworks/electron/SKILL.md +157 -157
  253. package/templates/skills/frameworks/flask/SKILL.md +48 -48
  254. package/templates/skills/frameworks/flutter/SKILL.md +65 -65
  255. package/templates/skills/frameworks/jquery/SKILL.md +42 -42
  256. package/templates/skills/frameworks/laravel/SKILL.md +48 -48
  257. package/templates/skills/frameworks/nestjs/SKILL.md +53 -53
  258. package/templates/skills/frameworks/nextjs/SKILL.md +137 -137
  259. package/templates/skills/frameworks/nuxt/SKILL.md +50 -50
  260. package/templates/skills/frameworks/rails/SKILL.md +76 -76
  261. package/templates/skills/frameworks/react/SKILL.md +48 -48
  262. package/templates/skills/frameworks/react-native/SKILL.md +57 -57
  263. package/templates/skills/frameworks/spring/SKILL.md +49 -49
  264. package/templates/skills/frameworks/symfony/SKILL.md +46 -46
  265. package/templates/skills/frameworks/vue/SKILL.md +46 -46
  266. package/templates/skills/frameworks/zend/SKILL.md +45 -45
  267. package/templates/skills/ides/copilot/SKILL.md +47 -47
  268. package/templates/skills/ides/cursor/SKILL.md +53 -53
  269. package/templates/skills/ides/jetbrains-ai/SKILL.md +45 -45
  270. package/templates/skills/ides/replit/SKILL.md +46 -46
  271. package/templates/skills/ides/tabnine/SKILL.md +39 -39
  272. package/templates/skills/ides/vscode/SKILL.md +50 -50
  273. package/templates/skills/ides/windsurf/SKILL.md +46 -46
  274. package/templates/skills/ides/zed/SKILL.md +42 -42
  275. package/templates/skills/languages/c/SKILL.md +343 -343
  276. package/templates/skills/languages/cpp/SKILL.md +753 -753
  277. package/templates/skills/languages/csharp/SKILL.md +427 -427
  278. package/templates/skills/languages/elixir/SKILL.md +464 -464
  279. package/templates/skills/languages/erlang/SKILL.md +371 -371
  280. package/templates/skills/languages/go/SKILL.md +655 -655
  281. package/templates/skills/languages/haskell/SKILL.md +187 -187
  282. package/templates/skills/languages/java/SKILL.md +617 -617
  283. package/templates/skills/languages/javascript/SKILL.md +641 -641
  284. package/templates/skills/languages/julia/SKILL.md +107 -107
  285. package/templates/skills/languages/kotlin/SKILL.md +521 -521
  286. package/templates/skills/languages/lisp/SKILL.md +110 -110
  287. package/templates/skills/languages/lua/SKILL.md +84 -84
  288. package/templates/skills/languages/objectivec/SKILL.md +100 -100
  289. package/templates/skills/languages/php/SKILL.md +426 -426
  290. package/templates/skills/languages/python/SKILL.md +692 -692
  291. package/templates/skills/languages/ruby/SKILL.md +431 -431
  292. package/templates/skills/languages/rust/SKILL.md +487 -487
  293. package/templates/skills/languages/sas/SKILL.md +83 -83
  294. package/templates/skills/languages/scala/SKILL.md +358 -358
  295. package/templates/skills/languages/solidity/SKILL.md +590 -590
  296. package/templates/skills/languages/sql/SKILL.md +147 -147
  297. package/templates/skills/languages/swift/SKILL.md +476 -476
  298. package/templates/skills/languages/typescript/SKILL.md +302 -302
  299. package/templates/skills/languages/zig/SKILL.md +275 -275
  300. package/templates/skills/modules/atlassian/SKILL.md +265 -265
  301. package/templates/skills/modules/context7/SKILL.md +64 -64
  302. package/templates/skills/modules/figma/SKILL.md +277 -277
  303. package/templates/skills/modules/github-mcp/SKILL.md +74 -74
  304. package/templates/skills/modules/grafana/SKILL.md +338 -338
  305. package/templates/skills/modules/memory/SKILL.md +73 -73
  306. package/templates/skills/modules/notion/SKILL.md +257 -257
  307. package/templates/skills/modules/playwright/SKILL.md +100 -100
  308. package/templates/skills/modules/rulebook-mcp/SKILL.md +166 -166
  309. package/templates/skills/modules/serena/SKILL.md +347 -347
  310. package/templates/skills/modules/supabase/SKILL.md +233 -233
  311. package/templates/skills/modules/synap/SKILL.md +79 -79
  312. package/templates/skills/modules/vectorizer/SKILL.md +73 -73
  313. package/templates/skills/services/azure-blob/SKILL.md +194 -194
  314. package/templates/skills/services/cassandra/SKILL.md +249 -249
  315. package/templates/skills/services/dynamodb/SKILL.md +318 -318
  316. package/templates/skills/services/elasticsearch/SKILL.md +357 -357
  317. package/templates/skills/services/gcs/SKILL.md +188 -188
  318. package/templates/skills/services/influxdb/SKILL.md +275 -275
  319. package/templates/skills/services/kafka/SKILL.md +351 -351
  320. package/templates/skills/services/mariadb/SKILL.md +193 -193
  321. package/templates/skills/services/memcached/SKILL.md +252 -252
  322. package/templates/skills/services/minio/SKILL.md +211 -211
  323. package/templates/skills/services/mongodb/SKILL.md +278 -278
  324. package/templates/skills/services/mysql/SKILL.md +368 -368
  325. package/templates/skills/services/neo4j/SKILL.md +257 -257
  326. package/templates/skills/services/oracle/SKILL.md +300 -300
  327. package/templates/skills/services/postgresql/SKILL.md +336 -336
  328. package/templates/skills/services/rabbitmq/SKILL.md +296 -296
  329. package/templates/skills/services/redis/SKILL.md +302 -302
  330. package/templates/skills/services/s3/SKILL.md +308 -308
  331. package/templates/skills/services/sqlite/SKILL.md +304 -304
  332. package/templates/skills/services/sqlserver/SKILL.md +304 -304
  333. package/templates/skills/workflows/ralph/SKILL.md +309 -309
  334. package/templates/skills/workflows/ralph/install.sh +87 -87
  335. package/templates/skills/workflows/ralph/manifest.json +158 -158
@@ -1,66 +1,66 @@
1
- <!-- RAILS:START -->
2
- # Ruby on Rails Framework Rules
3
-
4
- **Language**: Ruby
5
- **Version**: Rails 7.0+
6
-
7
- ## Setup & Configuration
8
-
9
- ```ruby
10
- # config/database.yml
11
- production:
12
- url: <%= ENV['DATABASE_URL'] %>
13
-
14
- # config/environments/production.rb
15
- config.force_ssl = true
16
- config.log_level = :info
17
- ```
18
-
19
- ## Quality Gates
20
-
21
- ```bash
22
- # Code quality
23
- bundle exec rubocop # Lint
24
- bundle exec brakeman # Security scan
25
-
26
- # Tests
27
- bundle exec rspec # Run tests
28
- bundle exec rspec --format documentation # Verbose
29
-
30
- # Type check (optional)
31
- bundle exec steep check # Static typing
32
- ```
33
-
34
- ## Best Practices
35
-
36
- ✅ **DO:**
37
- - Use strong parameters
38
- - Implement authentication (Devise/custom)
39
- - Use ActiveRecord callbacks sparingly
40
- - Write RSpec/Minitest tests
41
- - Use database migrations
42
- - Enable CSRF protection
43
-
44
- ❌ **DON'T:**
45
- - Skip validations in models
46
- - Use `params` without permit
47
- - Store secrets in code
48
- - Skip database indexes
49
- - Ignore N+1 queries
50
-
51
- ## Project Structure
52
-
53
- ```
54
- app/
55
- ├── controllers/
56
- ├── models/
57
- ├── views/
58
- ├── jobs/
59
- └── mailers/
60
- config/
61
- db/
62
- spec/
63
- ```
64
-
65
- <!-- RAILS:END -->
66
-
1
+ <!-- RAILS:START -->
2
+ # Ruby on Rails Framework Rules
3
+
4
+ **Language**: Ruby
5
+ **Version**: Rails 7.0+
6
+
7
+ ## Setup & Configuration
8
+
9
+ ```ruby
10
+ # config/database.yml
11
+ production:
12
+ url: <%= ENV['DATABASE_URL'] %>
13
+
14
+ # config/environments/production.rb
15
+ config.force_ssl = true
16
+ config.log_level = :info
17
+ ```
18
+
19
+ ## Quality Gates
20
+
21
+ ```bash
22
+ # Code quality
23
+ bundle exec rubocop # Lint
24
+ bundle exec brakeman # Security scan
25
+
26
+ # Tests
27
+ bundle exec rspec # Run tests
28
+ bundle exec rspec --format documentation # Verbose
29
+
30
+ # Type check (optional)
31
+ bundle exec steep check # Static typing
32
+ ```
33
+
34
+ ## Best Practices
35
+
36
+ ✅ **DO:**
37
+ - Use strong parameters
38
+ - Implement authentication (Devise/custom)
39
+ - Use ActiveRecord callbacks sparingly
40
+ - Write RSpec/Minitest tests
41
+ - Use database migrations
42
+ - Enable CSRF protection
43
+
44
+ ❌ **DON'T:**
45
+ - Skip validations in models
46
+ - Use `params` without permit
47
+ - Store secrets in code
48
+ - Skip database indexes
49
+ - Ignore N+1 queries
50
+
51
+ ## Project Structure
52
+
53
+ ```
54
+ app/
55
+ ├── controllers/
56
+ ├── models/
57
+ ├── views/
58
+ ├── jobs/
59
+ └── mailers/
60
+ config/
61
+ db/
62
+ spec/
63
+ ```
64
+
65
+ <!-- RAILS:END -->
66
+
@@ -1,38 +1,38 @@
1
- <!-- REACT:START -->
2
- # React Framework Rules
3
-
4
- **CRITICAL**: React applications must comply with these quality bars.
5
-
6
- ## Quality Commands
7
- - Lint & type check: `npm run lint` + `npm run type-check`
8
- - Unit/integration tests: `npm run test -- --watch=false`
9
- - Build: `npm run build`
10
- - Bundle analysis (optional): `npm run analyze`
11
-
12
- ## Project Structure
13
- - Group features under `src/features/<name>/`
14
- - Maintain shared UI primitives in `src/components`
15
- - Keep hooks in `src/hooks`
16
- - Centralize state management in `src/state` (Redux/Zustand/Recoil)
17
-
18
- ## Implementation Guidelines
19
- - Use TypeScript everywhere (no implicit `any`)
20
- - Prefer functional components with hooks
21
- - Co-locate component tests as `<Component>.test.tsx`
22
- - Use React Query/SWR for server state, keep caches invalidated on mutations
23
- - Wrap new pages with error boundaries and suspense where needed
24
-
25
- ## Pre-Commit Checklist
26
- ```bash
27
- npm run lint
28
- npm run type-check
29
- npm run test -- --watch=false
30
- npm run build
31
- ```
32
-
33
- ## Documentation
34
- - Update `/docs/react-architecture.md` when routes or global providers change
35
- - Record reusable components in Storybook or `/docs/ui-components.md`
36
- - Capture performance regressions in `/docs/performance.md`
37
-
38
- <!-- REACT:END -->
1
+ <!-- REACT:START -->
2
+ # React Framework Rules
3
+
4
+ **CRITICAL**: React applications must comply with these quality bars.
5
+
6
+ ## Quality Commands
7
+ - Lint & type check: `npm run lint` + `npm run type-check`
8
+ - Unit/integration tests: `npm run test -- --watch=false`
9
+ - Build: `npm run build`
10
+ - Bundle analysis (optional): `npm run analyze`
11
+
12
+ ## Project Structure
13
+ - Group features under `src/features/<name>/`
14
+ - Maintain shared UI primitives in `src/components`
15
+ - Keep hooks in `src/hooks`
16
+ - Centralize state management in `src/state` (Redux/Zustand/Recoil)
17
+
18
+ ## Implementation Guidelines
19
+ - Use TypeScript everywhere (no implicit `any`)
20
+ - Prefer functional components with hooks
21
+ - Co-locate component tests as `<Component>.test.tsx`
22
+ - Use React Query/SWR for server state, keep caches invalidated on mutations
23
+ - Wrap new pages with error boundaries and suspense where needed
24
+
25
+ ## Pre-Commit Checklist
26
+ ```bash
27
+ npm run lint
28
+ npm run type-check
29
+ npm run test -- --watch=false
30
+ npm run build
31
+ ```
32
+
33
+ ## Documentation
34
+ - Update `/docs/react-architecture.md` when routes or global providers change
35
+ - Record reusable components in Storybook or `/docs/ui-components.md`
36
+ - Capture performance regressions in `/docs/performance.md`
37
+
38
+ <!-- REACT:END -->
@@ -1,47 +1,47 @@
1
- <!-- REACT_NATIVE:START -->
2
- # React Native Framework Rules
3
-
4
- **Language**: JavaScript, TypeScript
5
- **Version**: React Native 0.72+
6
-
7
- ## Setup
8
-
9
- ```bash
10
- npx react-native init MyApp --template react-native-template-typescript
11
- ```
12
-
13
- ## Quality Gates
14
-
15
- ```bash
16
- npm run lint
17
- npm run type-check
18
- npm test
19
- npm run android # Test build
20
- npm run ios # Test build
21
- ```
22
-
23
- ## Best Practices
24
-
25
- ✅ Use TypeScript
26
- ✅ Implement proper navigation (React Navigation)
27
- ✅ Use platform-specific code when needed
28
- ✅ Optimize images and assets
29
- ✅ Test on both iOS and Android
30
-
31
- ❌ Don't hardcode dimensions
32
- ❌ Don't skip accessibility
33
- ❌ Don't ignore memory leaks
34
-
35
- ## Project Structure
36
-
37
- ```
38
- src/
39
- ├── components/
40
- ├── screens/
41
- ├── navigation/
42
- ├── services/
43
- └── utils/
44
- ```
45
-
46
- <!-- REACT_NATIVE:END -->
47
-
1
+ <!-- REACT_NATIVE:START -->
2
+ # React Native Framework Rules
3
+
4
+ **Language**: JavaScript, TypeScript
5
+ **Version**: React Native 0.72+
6
+
7
+ ## Setup
8
+
9
+ ```bash
10
+ npx react-native init MyApp --template react-native-template-typescript
11
+ ```
12
+
13
+ ## Quality Gates
14
+
15
+ ```bash
16
+ npm run lint
17
+ npm run type-check
18
+ npm test
19
+ npm run android # Test build
20
+ npm run ios # Test build
21
+ ```
22
+
23
+ ## Best Practices
24
+
25
+ ✅ Use TypeScript
26
+ ✅ Implement proper navigation (React Navigation)
27
+ ✅ Use platform-specific code when needed
28
+ ✅ Optimize images and assets
29
+ ✅ Test on both iOS and Android
30
+
31
+ ❌ Don't hardcode dimensions
32
+ ❌ Don't skip accessibility
33
+ ❌ Don't ignore memory leaks
34
+
35
+ ## Project Structure
36
+
37
+ ```
38
+ src/
39
+ ├── components/
40
+ ├── screens/
41
+ ├── navigation/
42
+ ├── services/
43
+ └── utils/
44
+ ```
45
+
46
+ <!-- REACT_NATIVE:END -->
47
+
@@ -1,39 +1,39 @@
1
- <!-- SPRING:START -->
2
- # Spring Boot Framework Rules
3
-
4
- **CRITICAL**: Every Spring service must satisfy these quality gates before merge.
5
-
6
- ## Build & Quality Commands
7
- - Lint/format: `./gradlew checkstyleMain` or `mvn verify`
8
- - Unit tests: `./gradlew test` or `mvn test`
9
- - Integration tests: `./gradlew integrationTest` (if module exists)
10
- - Static analysis: `./gradlew jacocoTestReport` to ensure 80%+ coverage
11
-
12
- ## Project Structure
13
- - Keep domain logic in `src/main/java/.../service`
14
- - Expose REST controllers in `controller` packages
15
- - Isolate configuration classes under `config`
16
- - Share DTOs via `dto` package and map with MapStruct where applicable
17
-
18
- ## Implementation Guidelines
19
- - Manage configuration with `application.yml` profiles (dev/test/prod)
20
- - Prefer constructor injection, avoid `@Autowired` field injection
21
- - Wrap transactional operations with `@Transactional`
22
- - Use `ResponseEntity` for explicit HTTP semantics
23
- - Validate inputs using `javax.validation` annotations and `@Valid`
24
-
25
- ## Build Matrix
26
- ```bash
27
- # Gradle
28
- ./gradlew clean check
29
-
30
- # Maven
31
- mvn -B clean verify
32
- ```
33
-
34
- ## Additional Checks
35
- - Ensure `application.yml` contains defaults for new properties
36
- - Update Flyway/Liquibase migrations when schema changes
37
- - Keep `README` and `/docs/architecture.md` synced with new services
38
-
39
- <!-- SPRING:END -->
1
+ <!-- SPRING:START -->
2
+ # Spring Boot Framework Rules
3
+
4
+ **CRITICAL**: Every Spring service must satisfy these quality gates before merge.
5
+
6
+ ## Build & Quality Commands
7
+ - Lint/format: `./gradlew checkstyleMain` or `mvn verify`
8
+ - Unit tests: `./gradlew test` or `mvn test`
9
+ - Integration tests: `./gradlew integrationTest` (if module exists)
10
+ - Static analysis: `./gradlew jacocoTestReport` to ensure 80%+ coverage
11
+
12
+ ## Project Structure
13
+ - Keep domain logic in `src/main/java/.../service`
14
+ - Expose REST controllers in `controller` packages
15
+ - Isolate configuration classes under `config`
16
+ - Share DTOs via `dto` package and map with MapStruct where applicable
17
+
18
+ ## Implementation Guidelines
19
+ - Manage configuration with `application.yml` profiles (dev/test/prod)
20
+ - Prefer constructor injection, avoid `@Autowired` field injection
21
+ - Wrap transactional operations with `@Transactional`
22
+ - Use `ResponseEntity` for explicit HTTP semantics
23
+ - Validate inputs using `javax.validation` annotations and `@Valid`
24
+
25
+ ## Build Matrix
26
+ ```bash
27
+ # Gradle
28
+ ./gradlew clean check
29
+
30
+ # Maven
31
+ mvn -B clean verify
32
+ ```
33
+
34
+ ## Additional Checks
35
+ - Ensure `application.yml` contains defaults for new properties
36
+ - Update Flyway/Liquibase migrations when schema changes
37
+ - Keep `README` and `/docs/architecture.md` synced with new services
38
+
39
+ <!-- SPRING:END -->
@@ -1,36 +1,36 @@
1
- <!-- SYMFONY:START -->
2
- # Symfony Framework Rules
3
-
4
- **Language**: PHP
5
- **Version**: Symfony 6.0+ or 7.0+
6
-
7
- ## Setup
8
-
9
- ```yaml
10
- # config/packages/framework.yaml
11
- framework:
12
- secret: '%env(APP_SECRET)%'
13
- csrf_protection: true
14
- ```
15
-
16
- ## Quality Gates
17
-
18
- ```bash
19
- php bin/console lint:twig templates/
20
- php bin/console lint:yaml config/
21
- vendor/bin/phpstan analyze src tests
22
- vendor/bin/phpunit
23
- ```
24
-
25
- ## Best Practices
26
-
27
- ✅ Use dependency injection
28
- ✅ Follow PSR standards
29
- ✅ Use Doctrine ORM
30
- ✅ Implement security voters
31
-
32
- ❌ Don't bypass security
33
- ❌ Don't hardcode routes
34
-
35
- <!-- SYMFONY:END -->
36
-
1
+ <!-- SYMFONY:START -->
2
+ # Symfony Framework Rules
3
+
4
+ **Language**: PHP
5
+ **Version**: Symfony 6.0+ or 7.0+
6
+
7
+ ## Setup
8
+
9
+ ```yaml
10
+ # config/packages/framework.yaml
11
+ framework:
12
+ secret: '%env(APP_SECRET)%'
13
+ csrf_protection: true
14
+ ```
15
+
16
+ ## Quality Gates
17
+
18
+ ```bash
19
+ php bin/console lint:twig templates/
20
+ php bin/console lint:yaml config/
21
+ vendor/bin/phpstan analyze src tests
22
+ vendor/bin/phpunit
23
+ ```
24
+
25
+ ## Best Practices
26
+
27
+ ✅ Use dependency injection
28
+ ✅ Follow PSR standards
29
+ ✅ Use Doctrine ORM
30
+ ✅ Implement security voters
31
+
32
+ ❌ Don't bypass security
33
+ ❌ Don't hardcode routes
34
+
35
+ <!-- SYMFONY:END -->
36
+
@@ -1,36 +1,36 @@
1
- <!-- VUE:START -->
2
- # Vue Framework Rules
3
-
4
- **CRITICAL**: Vue 3 projects should follow these guardrails.
5
-
6
- ## Quality Commands
7
- - Lint: `npm run lint`
8
- - Unit tests: `npm run test:unit`
9
- - e2e tests (Cypress/Playwright): `npm run test:e2e`
10
- - Build: `npm run build`
11
-
12
- ## Project Structure
13
- - Place feature modules in `src/modules/<feature>/`
14
- - Keep reusable components in `src/components`
15
- - Shared composables go in `src/composables`
16
- - Centralize Pinia/Vuex stores under `src/stores`
17
-
18
- ## Implementation Guidelines
19
- - Adopt `<script setup>` with TypeScript and define props via `defineProps`
20
- - Leverage `defineEmits` for typed event emission
21
- - Lazy-load routes with dynamic imports in `router/index.ts`
22
- - Ensure global styles scoped via `:global` or dedicated CSS files
23
-
24
- ## Pre-Commit Commands
25
- ```bash
26
- npm run lint
27
- npm run test:unit
28
- npm run build
29
- ```
30
-
31
- ## Documentation
32
- - Update `/docs/vue-architecture.md` with module tree changes
33
- - Document composables in `/docs/composables.md`
34
- - Add component usage examples to `/docs/ui-components.md`
35
-
36
- <!-- VUE:END -->
1
+ <!-- VUE:START -->
2
+ # Vue Framework Rules
3
+
4
+ **CRITICAL**: Vue 3 projects should follow these guardrails.
5
+
6
+ ## Quality Commands
7
+ - Lint: `npm run lint`
8
+ - Unit tests: `npm run test:unit`
9
+ - e2e tests (Cypress/Playwright): `npm run test:e2e`
10
+ - Build: `npm run build`
11
+
12
+ ## Project Structure
13
+ - Place feature modules in `src/modules/<feature>/`
14
+ - Keep reusable components in `src/components`
15
+ - Shared composables go in `src/composables`
16
+ - Centralize Pinia/Vuex stores under `src/stores`
17
+
18
+ ## Implementation Guidelines
19
+ - Adopt `<script setup>` with TypeScript and define props via `defineProps`
20
+ - Leverage `defineEmits` for typed event emission
21
+ - Lazy-load routes with dynamic imports in `router/index.ts`
22
+ - Ensure global styles scoped via `:global` or dedicated CSS files
23
+
24
+ ## Pre-Commit Commands
25
+ ```bash
26
+ npm run lint
27
+ npm run test:unit
28
+ npm run build
29
+ ```
30
+
31
+ ## Documentation
32
+ - Update `/docs/vue-architecture.md` with module tree changes
33
+ - Document composables in `/docs/composables.md`
34
+ - Add component usage examples to `/docs/ui-components.md`
35
+
36
+ <!-- VUE:END -->
@@ -1,35 +1,35 @@
1
- <!-- ZEND:START -->
2
- # Zend/Laminas Framework Rules
3
-
4
- **Language**: PHP
5
- **Version**: Laminas MVC 3.x+
6
-
7
- ## Setup
8
-
9
- ```php
10
- // config/modules.config.php
11
- return [
12
- 'Laminas\Router',
13
- 'Application',
14
- ];
15
- ```
16
-
17
- ## Quality Gates
18
-
19
- ```bash
20
- vendor/bin/phpcs --standard=PSR12 src/
21
- vendor/bin/phpstan analyze
22
- vendor/bin/phpunit
23
- ```
24
-
25
- ## Best Practices
26
-
27
- ✅ Use service manager
28
- ✅ Implement middleware
29
- ✅ Use form validation
30
-
31
- ❌ Don't skip CSRF tokens
32
- ❌ Don't expose errors in production
33
-
34
- <!-- ZEND:END -->
35
-
1
+ <!-- ZEND:START -->
2
+ # Zend/Laminas Framework Rules
3
+
4
+ **Language**: PHP
5
+ **Version**: Laminas MVC 3.x+
6
+
7
+ ## Setup
8
+
9
+ ```php
10
+ // config/modules.config.php
11
+ return [
12
+ 'Laminas\Router',
13
+ 'Application',
14
+ ];
15
+ ```
16
+
17
+ ## Quality Gates
18
+
19
+ ```bash
20
+ vendor/bin/phpcs --standard=PSR12 src/
21
+ vendor/bin/phpstan analyze
22
+ vendor/bin/phpunit
23
+ ```
24
+
25
+ ## Best Practices
26
+
27
+ ✅ Use service manager
28
+ ✅ Implement middleware
29
+ ✅ Use form validation
30
+
31
+ ❌ Don't skip CSRF tokens
32
+ ❌ Don't expose errors in production
33
+
34
+ <!-- ZEND:END -->
35
+