@aicgen/aicgen 1.0.0-beta.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 (287) hide show
  1. package/.claude/agents/architecture-reviewer.md +88 -0
  2. package/.claude/agents/guideline-checker.md +73 -0
  3. package/.claude/agents/security-auditor.md +108 -0
  4. package/.claude/guidelines/api-design.md +645 -0
  5. package/.claude/guidelines/architecture.md +2503 -0
  6. package/.claude/guidelines/best-practices.md +618 -0
  7. package/.claude/guidelines/code-style.md +304 -0
  8. package/.claude/guidelines/design-patterns.md +573 -0
  9. package/.claude/guidelines/devops.md +226 -0
  10. package/.claude/guidelines/error-handling.md +413 -0
  11. package/.claude/guidelines/language.md +782 -0
  12. package/.claude/guidelines/performance.md +706 -0
  13. package/.claude/guidelines/security.md +583 -0
  14. package/.claude/guidelines/testing.md +568 -0
  15. package/.claude/settings.json +98 -0
  16. package/.claude/settings.local.json +8 -0
  17. package/.env.example +23 -0
  18. package/.eslintrc.json +28 -0
  19. package/.github/workflows/release.yml +180 -0
  20. package/.github/workflows/test.yml +81 -0
  21. package/.gitmodules +3 -0
  22. package/.vs/ProjectSettings.json +3 -0
  23. package/.vs/VSWorkspaceState.json +16 -0
  24. package/.vs/aicgen.slnx/FileContentIndex/5f0ce2a3-fd68-4863-9e23-e428cf1794e3.vsidx +0 -0
  25. package/.vs/aicgen.slnx/v18/.wsuo +0 -0
  26. package/.vs/aicgen.slnx/v18/DocumentLayout.json +54 -0
  27. package/.vs/slnx.sqlite +0 -0
  28. package/AGENTS.md +121 -0
  29. package/CLAUDE.md +36 -0
  30. package/CONTRIBUTING.md +821 -0
  31. package/LICENSE +21 -0
  32. package/README.md +199 -0
  33. package/assets/icon.svg +34 -0
  34. package/assets/logo.svg +41 -0
  35. package/bun.lock +848 -0
  36. package/data/LICENSE +21 -0
  37. package/data/README.md +203 -0
  38. package/data/api/basics.md +292 -0
  39. package/data/api/index.md +8 -0
  40. package/data/api/pagination.md +142 -0
  41. package/data/api/rest.md +137 -0
  42. package/data/api/versioning.md +60 -0
  43. package/data/architecture/clean-architecture/index.md +7 -0
  44. package/data/architecture/clean-architecture/layers.md +111 -0
  45. package/data/architecture/ddd/index.md +8 -0
  46. package/data/architecture/ddd/strategic.md +89 -0
  47. package/data/architecture/ddd/tactical.md +132 -0
  48. package/data/architecture/event-driven/index.md +7 -0
  49. package/data/architecture/event-driven/messaging.md +242 -0
  50. package/data/architecture/event-driven/patterns.md +129 -0
  51. package/data/architecture/feature-toggles/index.md +7 -0
  52. package/data/architecture/feature-toggles/patterns.md +73 -0
  53. package/data/architecture/gui/index.md +7 -0
  54. package/data/architecture/gui/patterns.md +132 -0
  55. package/data/architecture/hexagonal/ports-adapters.md +132 -0
  56. package/data/architecture/index.md +12 -0
  57. package/data/architecture/layered/index.md +7 -0
  58. package/data/architecture/layered/layers.md +100 -0
  59. package/data/architecture/microservices/api-gateway.md +56 -0
  60. package/data/architecture/microservices/boundaries.md +80 -0
  61. package/data/architecture/microservices/communication.md +97 -0
  62. package/data/architecture/microservices/data.md +92 -0
  63. package/data/architecture/microservices/index.md +11 -0
  64. package/data/architecture/microservices/resilience.md +111 -0
  65. package/data/architecture/modular-monolith/boundaries.md +133 -0
  66. package/data/architecture/modular-monolith/structure.md +131 -0
  67. package/data/architecture/serverless/best-practices.md +322 -0
  68. package/data/architecture/serverless/index.md +7 -0
  69. package/data/architecture/serverless/patterns.md +80 -0
  70. package/data/architecture/solid/index.md +7 -0
  71. package/data/architecture/solid/principles.md +187 -0
  72. package/data/database/basics.md +365 -0
  73. package/data/database/design-patterns.md +68 -0
  74. package/data/database/index.md +8 -0
  75. package/data/database/indexing.md +136 -0
  76. package/data/database/nosql.md +223 -0
  77. package/data/database/schema.md +137 -0
  78. package/data/devops/ci-cd.md +66 -0
  79. package/data/devops/index.md +8 -0
  80. package/data/devops/observability.md +73 -0
  81. package/data/devops/practices.md +77 -0
  82. package/data/error-handling/basics.md +222 -0
  83. package/data/error-handling/index.md +7 -0
  84. package/data/error-handling/strategy.md +185 -0
  85. package/data/guideline-mappings.yml +1077 -0
  86. package/data/index.md +3 -0
  87. package/data/language/csharp/basics.md +210 -0
  88. package/data/language/csharp/testing.md +252 -0
  89. package/data/language/go/basics.md +158 -0
  90. package/data/language/go/testing.md +192 -0
  91. package/data/language/index.md +14 -0
  92. package/data/language/java/basics.md +184 -0
  93. package/data/language/java/testing.md +273 -0
  94. package/data/language/javascript/basics.md +217 -0
  95. package/data/language/javascript/testing.md +269 -0
  96. package/data/language/python/async.md +100 -0
  97. package/data/language/python/basics.md +100 -0
  98. package/data/language/python/index.md +10 -0
  99. package/data/language/python/testing.md +125 -0
  100. package/data/language/python/types.md +99 -0
  101. package/data/language/ruby/basics.md +227 -0
  102. package/data/language/ruby/testing.md +267 -0
  103. package/data/language/rust/basics.md +175 -0
  104. package/data/language/rust/testing.md +219 -0
  105. package/data/language/typescript/async.md +103 -0
  106. package/data/language/typescript/basics.md +87 -0
  107. package/data/language/typescript/config.md +95 -0
  108. package/data/language/typescript/error-handling.md +98 -0
  109. package/data/language/typescript/generics.md +85 -0
  110. package/data/language/typescript/index.md +14 -0
  111. package/data/language/typescript/interfaces-types.md +83 -0
  112. package/data/language/typescript/performance.md +103 -0
  113. package/data/language/typescript/testing.md +98 -0
  114. package/data/patterns/base-patterns.md +105 -0
  115. package/data/patterns/concurrency.md +87 -0
  116. package/data/patterns/data-access.md +83 -0
  117. package/data/patterns/distribution.md +86 -0
  118. package/data/patterns/domain-logic.md +81 -0
  119. package/data/patterns/gof.md +109 -0
  120. package/data/patterns/index.md +12 -0
  121. package/data/performance/async.md +148 -0
  122. package/data/performance/basics.md +324 -0
  123. package/data/performance/caching-strategies.md +68 -0
  124. package/data/performance/caching.md +152 -0
  125. package/data/performance/index.md +8 -0
  126. package/data/practices/code-review.md +52 -0
  127. package/data/practices/documentation.md +260 -0
  128. package/data/practices/index.md +11 -0
  129. package/data/practices/planning.md +142 -0
  130. package/data/practices/refactoring.md +91 -0
  131. package/data/practices/version-control.md +55 -0
  132. package/data/security/auth-jwt.md +159 -0
  133. package/data/security/headers.md +143 -0
  134. package/data/security/index.md +10 -0
  135. package/data/security/injection.md +119 -0
  136. package/data/security/secrets.md +148 -0
  137. package/data/style/index.md +8 -0
  138. package/data/style/naming.md +136 -0
  139. package/data/style/organization.md +162 -0
  140. package/data/templates/agents/architecture-reviewer.md +88 -0
  141. package/data/templates/agents/guideline-checker.md +73 -0
  142. package/data/templates/agents/security-auditor.md +108 -0
  143. package/data/templates/antigravity/rules/architecture.md.hbs +5 -0
  144. package/data/templates/antigravity/rules/code-style.md.hbs +5 -0
  145. package/data/templates/antigravity/rules/language.md.hbs +5 -0
  146. package/data/templates/antigravity/rules/performance.md.hbs +5 -0
  147. package/data/templates/antigravity/rules/security.md.hbs +5 -0
  148. package/data/templates/antigravity/rules/testing.md.hbs +5 -0
  149. package/data/templates/antigravity/workflows/add-documentation.md.hbs +23 -0
  150. package/data/templates/antigravity/workflows/generate-integration-tests.md.hbs +17 -0
  151. package/data/templates/antigravity/workflows/generate-unit-tests.md.hbs +20 -0
  152. package/data/templates/antigravity/workflows/performance-audit.md.hbs +24 -0
  153. package/data/templates/antigravity/workflows/refactor-extract-module.md.hbs +17 -0
  154. package/data/templates/antigravity/workflows/security-audit.md.hbs +20 -0
  155. package/data/templates/hooks/formatting.json +26 -0
  156. package/data/templates/hooks/security.json +35 -0
  157. package/data/templates/hooks/testing.json +17 -0
  158. package/data/testing/basics.md +151 -0
  159. package/data/testing/index.md +9 -0
  160. package/data/testing/integration.md +159 -0
  161. package/data/testing/unit-fundamentals.md +128 -0
  162. package/data/testing/unit-mocking.md +116 -0
  163. package/data/version.json +49 -0
  164. package/dist/commands/init.d.ts +8 -0
  165. package/dist/commands/init.d.ts.map +1 -0
  166. package/dist/commands/init.js +46 -0
  167. package/dist/commands/init.js.map +1 -0
  168. package/dist/config/profiles.d.ts +4 -0
  169. package/dist/config/profiles.d.ts.map +1 -0
  170. package/dist/config/profiles.js +30 -0
  171. package/dist/config/profiles.js.map +1 -0
  172. package/dist/config/settings.d.ts +7 -0
  173. package/dist/config/settings.d.ts.map +1 -0
  174. package/dist/config/settings.js +7 -0
  175. package/dist/config/settings.js.map +1 -0
  176. package/dist/index.d.ts +3 -0
  177. package/dist/index.d.ts.map +1 -0
  178. package/dist/index.js +58489 -0
  179. package/dist/index.js.map +1 -0
  180. package/dist/models/guideline.d.ts +15 -0
  181. package/dist/models/guideline.d.ts.map +1 -0
  182. package/dist/models/guideline.js +2 -0
  183. package/dist/models/guideline.js.map +1 -0
  184. package/dist/models/preference.d.ts +9 -0
  185. package/dist/models/preference.d.ts.map +1 -0
  186. package/dist/models/preference.js +2 -0
  187. package/dist/models/preference.js.map +1 -0
  188. package/dist/models/profile.d.ts +9 -0
  189. package/dist/models/profile.d.ts.map +1 -0
  190. package/dist/models/profile.js +2 -0
  191. package/dist/models/profile.js.map +1 -0
  192. package/dist/models/project.d.ts +13 -0
  193. package/dist/models/project.d.ts.map +1 -0
  194. package/dist/models/project.js +2 -0
  195. package/dist/models/project.js.map +1 -0
  196. package/dist/services/ai/anthropic.d.ts +7 -0
  197. package/dist/services/ai/anthropic.d.ts.map +1 -0
  198. package/dist/services/ai/anthropic.js +39 -0
  199. package/dist/services/ai/anthropic.js.map +1 -0
  200. package/dist/services/generator.d.ts +2 -0
  201. package/dist/services/generator.d.ts.map +1 -0
  202. package/dist/services/generator.js +4 -0
  203. package/dist/services/generator.js.map +1 -0
  204. package/dist/services/learner.d.ts +2 -0
  205. package/dist/services/learner.d.ts.map +1 -0
  206. package/dist/services/learner.js +4 -0
  207. package/dist/services/learner.js.map +1 -0
  208. package/dist/services/scanner.d.ts +3 -0
  209. package/dist/services/scanner.d.ts.map +1 -0
  210. package/dist/services/scanner.js +54 -0
  211. package/dist/services/scanner.js.map +1 -0
  212. package/dist/utils/errors.d.ts +15 -0
  213. package/dist/utils/errors.d.ts.map +1 -0
  214. package/dist/utils/errors.js +27 -0
  215. package/dist/utils/errors.js.map +1 -0
  216. package/dist/utils/file.d.ts +7 -0
  217. package/dist/utils/file.d.ts.map +1 -0
  218. package/dist/utils/file.js +32 -0
  219. package/dist/utils/file.js.map +1 -0
  220. package/dist/utils/logger.d.ts +6 -0
  221. package/dist/utils/logger.d.ts.map +1 -0
  222. package/dist/utils/logger.js +17 -0
  223. package/dist/utils/logger.js.map +1 -0
  224. package/dist/utils/path.d.ts +6 -0
  225. package/dist/utils/path.d.ts.map +1 -0
  226. package/dist/utils/path.js +14 -0
  227. package/dist/utils/path.js.map +1 -0
  228. package/docs/planning/memory-lane.md +83 -0
  229. package/package.json +64 -0
  230. package/packaging/linux/aicgen.spec +23 -0
  231. package/packaging/linux/control +9 -0
  232. package/packaging/macos/scripts/postinstall +12 -0
  233. package/packaging/windows/setup.nsi +92 -0
  234. package/planning/BRANDING-SUMMARY.md +194 -0
  235. package/planning/BRANDING.md +174 -0
  236. package/planning/BUILD.md +186 -0
  237. package/planning/CHUNK-IMPLEMENTATION-PLAN.md +87 -0
  238. package/planning/CHUNK-TAXONOMY.md +375 -0
  239. package/planning/CHUNKS-COMPLETE.md +382 -0
  240. package/planning/DESIGN.md +313 -0
  241. package/planning/DYNAMIC-GUIDELINES-DESIGN.md +265 -0
  242. package/planning/ENTERPRISE-UX-COMPLETE.md +281 -0
  243. package/planning/IMPLEMENTATION-PLAN.md +20 -0
  244. package/planning/PHASE1-COMPLETE.md +211 -0
  245. package/planning/PHASE2-COMPLETE.md +350 -0
  246. package/planning/PHASE3-COMPLETE.md +399 -0
  247. package/planning/PHASE4-COMPLETE.md +361 -0
  248. package/planning/PHASE4.5-CHUNKS.md +462 -0
  249. package/planning/STRUCTURE.md +170 -0
  250. package/scripts/add-categories.ts +87 -0
  251. package/scripts/build-binary.ts +46 -0
  252. package/scripts/embed-data.ts +105 -0
  253. package/scripts/generate-version.ts +150 -0
  254. package/scripts/test-decompress.ts +27 -0
  255. package/scripts/test-extract.ts +31 -0
  256. package/src/__tests__/services/assistant-file-writer.test.ts +400 -0
  257. package/src/__tests__/services/guideline-loader.test.ts +281 -0
  258. package/src/__tests__/services/tarball-extraction.test.ts +125 -0
  259. package/src/commands/add-guideline.ts +296 -0
  260. package/src/commands/clear.ts +61 -0
  261. package/src/commands/guideline-selector.ts +123 -0
  262. package/src/commands/init.ts +645 -0
  263. package/src/commands/quick-add.ts +586 -0
  264. package/src/commands/remove-guideline.ts +152 -0
  265. package/src/commands/stats.ts +49 -0
  266. package/src/commands/update.ts +240 -0
  267. package/src/config.ts +82 -0
  268. package/src/embedded-data.ts +1492 -0
  269. package/src/index.ts +67 -0
  270. package/src/models/profile.ts +24 -0
  271. package/src/models/project.ts +43 -0
  272. package/src/services/assistant-file-writer.ts +612 -0
  273. package/src/services/config-generator.ts +150 -0
  274. package/src/services/config-manager.ts +70 -0
  275. package/src/services/data-source.ts +248 -0
  276. package/src/services/first-run-init.ts +148 -0
  277. package/src/services/guideline-loader.ts +311 -0
  278. package/src/services/hook-generator.ts +178 -0
  279. package/src/services/subagent-generator.ts +310 -0
  280. package/src/utils/banner.ts +66 -0
  281. package/src/utils/errors.ts +27 -0
  282. package/src/utils/file.ts +67 -0
  283. package/src/utils/formatting.ts +172 -0
  284. package/src/utils/logger.ts +89 -0
  285. package/src/utils/path.ts +17 -0
  286. package/src/utils/wizard-state.ts +132 -0
  287. package/tsconfig.json +25 -0
@@ -0,0 +1,1077 @@
1
+ # Guideline Mappings
2
+ # Defines which guidelines apply to which profiles
3
+ #
4
+ # Format:
5
+ # guideline-id:
6
+ # path: relative/path/to/guideline.md
7
+ # category: Guideline category for organization
8
+ # languages: [list of applicable languages] (optional, if omitted applies to all)
9
+ # levels: [list of applicable levels] (optional, if omitted applies to all)
10
+ # architectures: [list of applicable architectures] (optional, if omitted applies to all)
11
+ # tags: [list of tags for organization]
12
+
13
+ typescript-basics:
14
+ path: language/typescript/basics.md
15
+ languages:
16
+ - typescript
17
+ levels:
18
+ - basic
19
+ - standard
20
+ - expert
21
+ - full
22
+ tags:
23
+ - typescript
24
+ - fundamentals
25
+ - types
26
+ category: Language
27
+ typescript-async:
28
+ path: language/typescript/async.md
29
+ languages:
30
+ - typescript
31
+ levels:
32
+ - basic
33
+ - standard
34
+ - expert
35
+ - full
36
+ tags:
37
+ - typescript
38
+ - async
39
+ - promises
40
+ category: Language
41
+ typescript-interfaces-types:
42
+ path: language/typescript/interfaces-types.md
43
+ languages:
44
+ - typescript
45
+ levels:
46
+ - standard
47
+ - expert
48
+ - full
49
+ tags:
50
+ - typescript
51
+ - interfaces
52
+ - types
53
+ - utility-types
54
+ category: Language
55
+ typescript-generics:
56
+ path: language/typescript/generics.md
57
+ languages:
58
+ - typescript
59
+ levels:
60
+ - expert
61
+ - full
62
+ tags:
63
+ - typescript
64
+ - generics
65
+ - advanced
66
+ category: Language
67
+ typescript-error-handling:
68
+ path: language/typescript/error-handling.md
69
+ languages:
70
+ - typescript
71
+ levels:
72
+ - standard
73
+ - expert
74
+ - full
75
+ tags:
76
+ - typescript
77
+ - errors
78
+ - exceptions
79
+ category: Language
80
+ typescript-testing:
81
+ path: language/typescript/testing.md
82
+ languages:
83
+ - typescript
84
+ levels:
85
+ - standard
86
+ - expert
87
+ - full
88
+ tags:
89
+ - typescript
90
+ - testing
91
+ - jest
92
+ category: Language
93
+ typescript-config:
94
+ path: language/typescript/config.md
95
+ languages:
96
+ - typescript
97
+ levels:
98
+ - standard
99
+ - expert
100
+ - full
101
+ tags:
102
+ - typescript
103
+ - tsconfig
104
+ - configuration
105
+ category: Language
106
+ typescript-performance:
107
+ path: language/typescript/performance.md
108
+ languages:
109
+ - typescript
110
+ levels:
111
+ - expert
112
+ - full
113
+ tags:
114
+ - typescript
115
+ - performance
116
+ - optimization
117
+ category: Language
118
+ python-basics:
119
+ path: language/python/basics.md
120
+ languages:
121
+ - python
122
+ levels:
123
+ - basic
124
+ - standard
125
+ - expert
126
+ - full
127
+ tags:
128
+ - python
129
+ - fundamentals
130
+ - pep8
131
+ category: Language
132
+ python-types:
133
+ path: language/python/types.md
134
+ languages:
135
+ - python
136
+ levels:
137
+ - standard
138
+ - expert
139
+ - full
140
+ tags:
141
+ - python
142
+ - types
143
+ - type-hints
144
+ - mypy
145
+ category: Language
146
+ python-async:
147
+ path: language/python/async.md
148
+ languages:
149
+ - python
150
+ levels:
151
+ - expert
152
+ - full
153
+ tags:
154
+ - python
155
+ - async
156
+ - asyncio
157
+ category: Language
158
+ python-testing:
159
+ path: language/python/testing.md
160
+ languages:
161
+ - python
162
+ levels:
163
+ - standard
164
+ - expert
165
+ - full
166
+ tags:
167
+ - python
168
+ - testing
169
+ - pytest
170
+ category: Language
171
+ go-basics:
172
+ path: language/go/basics.md
173
+ languages:
174
+ - go
175
+ levels:
176
+ - basic
177
+ - standard
178
+ - expert
179
+ - full
180
+ tags:
181
+ - go
182
+ - golang
183
+ - fundamentals
184
+ category: Language
185
+ rust-basics:
186
+ path: language/rust/basics.md
187
+ languages:
188
+ - rust
189
+ levels:
190
+ - basic
191
+ - standard
192
+ - expert
193
+ - full
194
+ tags:
195
+ - rust
196
+ - ownership
197
+ - fundamentals
198
+ category: Language
199
+ java-basics:
200
+ path: language/java/basics.md
201
+ languages:
202
+ - java
203
+ levels:
204
+ - basic
205
+ - standard
206
+ - expert
207
+ - full
208
+ tags:
209
+ - java
210
+ - jvm
211
+ - fundamentals
212
+ category: Language
213
+ csharp-basics:
214
+ path: language/csharp/basics.md
215
+ languages:
216
+ - csharp
217
+ levels:
218
+ - basic
219
+ - standard
220
+ - expert
221
+ - full
222
+ tags:
223
+ - csharp
224
+ - dotnet
225
+ - fundamentals
226
+ category: Language
227
+ ruby-basics:
228
+ path: language/ruby/basics.md
229
+ languages:
230
+ - ruby
231
+ levels:
232
+ - basic
233
+ - standard
234
+ - expert
235
+ - full
236
+ tags:
237
+ - ruby
238
+ - rails
239
+ - fundamentals
240
+ category: Language
241
+ javascript-basics:
242
+ path: language/javascript/basics.md
243
+ languages:
244
+ - javascript
245
+ levels:
246
+ - basic
247
+ - standard
248
+ - expert
249
+ - full
250
+ tags:
251
+ - javascript
252
+ - es6
253
+ - fundamentals
254
+ category: Language
255
+ go-testing:
256
+ path: language/go/testing.md
257
+ languages:
258
+ - go
259
+ levels:
260
+ - standard
261
+ - expert
262
+ - full
263
+ tags:
264
+ - go
265
+ - testing
266
+ - table-driven
267
+ category: Language
268
+ rust-testing:
269
+ path: language/rust/testing.md
270
+ languages:
271
+ - rust
272
+ levels:
273
+ - standard
274
+ - expert
275
+ - full
276
+ tags:
277
+ - rust
278
+ - testing
279
+ - cargo-test
280
+ category: Language
281
+ java-testing:
282
+ path: language/java/testing.md
283
+ languages:
284
+ - java
285
+ levels:
286
+ - standard
287
+ - expert
288
+ - full
289
+ tags:
290
+ - java
291
+ - testing
292
+ - junit
293
+ - mockito
294
+ category: Language
295
+ csharp-testing:
296
+ path: language/csharp/testing.md
297
+ languages:
298
+ - csharp
299
+ levels:
300
+ - standard
301
+ - expert
302
+ - full
303
+ tags:
304
+ - csharp
305
+ - testing
306
+ - xunit
307
+ - moq
308
+ category: Language
309
+ ruby-testing:
310
+ path: language/ruby/testing.md
311
+ languages:
312
+ - ruby
313
+ levels:
314
+ - standard
315
+ - expert
316
+ - full
317
+ tags:
318
+ - ruby
319
+ - testing
320
+ - rspec
321
+ category: Language
322
+ javascript-testing:
323
+ path: language/javascript/testing.md
324
+ languages:
325
+ - javascript
326
+ levels:
327
+ - standard
328
+ - expert
329
+ - full
330
+ tags:
331
+ - javascript
332
+ - testing
333
+ - jest
334
+ category: Language
335
+ microservices-boundaries:
336
+ path: architecture/microservices/boundaries.md
337
+ architectures:
338
+ - microservices
339
+ levels:
340
+ - standard
341
+ - expert
342
+ - full
343
+ tags:
344
+ - microservices
345
+ - boundaries
346
+ - ddd
347
+ category: Architecture
348
+ microservices-communication:
349
+ path: architecture/microservices/communication.md
350
+ architectures:
351
+ - microservices
352
+ levels:
353
+ - standard
354
+ - expert
355
+ - full
356
+ tags:
357
+ - microservices
358
+ - communication
359
+ - messaging
360
+ - events
361
+ category: Architecture
362
+ microservices-data:
363
+ path: architecture/microservices/data.md
364
+ architectures:
365
+ - microservices
366
+ levels:
367
+ - standard
368
+ - expert
369
+ - full
370
+ tags:
371
+ - microservices
372
+ - data
373
+ - consistency
374
+ - saga
375
+ category: Architecture
376
+ microservices-resilience:
377
+ path: architecture/microservices/resilience.md
378
+ architectures:
379
+ - microservices
380
+ levels:
381
+ - expert
382
+ - full
383
+ tags:
384
+ - microservices
385
+ - resilience
386
+ - circuit-breaker
387
+ - retry
388
+ category: Architecture
389
+ microservices-api-gateway:
390
+ path: architecture/microservices/api-gateway.md
391
+ architectures:
392
+ - microservices
393
+ levels:
394
+ - standard
395
+ - expert
396
+ - full
397
+ tags:
398
+ - microservices
399
+ - api-gateway
400
+ - bff
401
+ - routing
402
+ category: Architecture
403
+ modular-monolith-structure:
404
+ path: architecture/modular-monolith/structure.md
405
+ architectures:
406
+ - modular-monolith
407
+ levels:
408
+ - standard
409
+ - expert
410
+ - full
411
+ tags:
412
+ - modular-monolith
413
+ - structure
414
+ - modules
415
+ category: Architecture
416
+ modular-monolith-boundaries:
417
+ path: architecture/modular-monolith/boundaries.md
418
+ architectures:
419
+ - modular-monolith
420
+ levels:
421
+ - standard
422
+ - expert
423
+ - full
424
+ tags:
425
+ - modular-monolith
426
+ - boundaries
427
+ - coupling
428
+ - events
429
+ category: Architecture
430
+ testing-unit-fundamentals:
431
+ path: testing/unit-fundamentals.md
432
+ levels:
433
+ - standard
434
+ - expert
435
+ - full
436
+ tags:
437
+ - testing
438
+ - unit-tests
439
+ - aaa-pattern
440
+ category: Testing
441
+ testing-unit-mocking:
442
+ path: testing/unit-mocking.md
443
+ levels:
444
+ - standard
445
+ - expert
446
+ - full
447
+ tags:
448
+ - testing
449
+ - mocking
450
+ - test-doubles
451
+ - stubs
452
+ category: Testing
453
+ testing-integration:
454
+ path: testing/integration.md
455
+ levels:
456
+ - expert
457
+ - full
458
+ tags:
459
+ - testing
460
+ - integration
461
+ - database
462
+ - api
463
+ category: Testing
464
+ testing-basics:
465
+ path: testing/basics.md
466
+ levels:
467
+ - basic
468
+ - standard
469
+ - expert
470
+ - full
471
+ tags:
472
+ - testing
473
+ - unit-tests
474
+ - assertions
475
+ - fundamentals
476
+ category: Testing
477
+ security-injection:
478
+ path: security/injection.md
479
+ levels:
480
+ - basic
481
+ - standard
482
+ - expert
483
+ - full
484
+ tags:
485
+ - security
486
+ - owasp
487
+ - sql-injection
488
+ - xss
489
+ category: Security
490
+ security-auth-jwt:
491
+ path: security/auth-jwt.md
492
+ levels:
493
+ - standard
494
+ - expert
495
+ - full
496
+ tags:
497
+ - security
498
+ - auth
499
+ - jwt
500
+ - session
501
+ - password
502
+ category: Security
503
+ security-secrets:
504
+ path: security/secrets.md
505
+ levels:
506
+ - standard
507
+ - expert
508
+ - full
509
+ tags:
510
+ - security
511
+ - secrets
512
+ - env
513
+ - configuration
514
+ category: Security
515
+ security-headers:
516
+ path: security/headers.md
517
+ levels:
518
+ - expert
519
+ - full
520
+ tags:
521
+ - security
522
+ - headers
523
+ - cors
524
+ - csp
525
+ - https
526
+ category: Security
527
+ performance-basics:
528
+ path: performance/basics.md
529
+ levels:
530
+ - basic
531
+ - standard
532
+ - expert
533
+ - full
534
+ tags:
535
+ - performance
536
+ - optimization
537
+ - data-structures
538
+ - n-plus-one
539
+ - fundamentals
540
+ category: Performance
541
+ performance-caching:
542
+ path: performance/caching.md
543
+ levels:
544
+ - expert
545
+ - full
546
+ tags:
547
+ - performance
548
+ - caching
549
+ - redis
550
+ - memoization
551
+ category: Performance
552
+ performance-async:
553
+ path: performance/async.md
554
+ levels:
555
+ - standard
556
+ - expert
557
+ - full
558
+ tags:
559
+ - performance
560
+ - async
561
+ - parallel
562
+ - batching
563
+ category: Performance
564
+ database-basics:
565
+ path: database/basics.md
566
+ levels:
567
+ - basic
568
+ - standard
569
+ - expert
570
+ - full
571
+ tags:
572
+ - database
573
+ - crud
574
+ - sql
575
+ - queries
576
+ - fundamentals
577
+ category: Database
578
+ database-schema:
579
+ path: database/schema.md
580
+ levels:
581
+ - standard
582
+ - expert
583
+ - full
584
+ datasources:
585
+ - sql
586
+ tags:
587
+ - database
588
+ - schema
589
+ - design
590
+ - normalization
591
+ category: Database
592
+ database-indexing:
593
+ path: database/indexing.md
594
+ levels:
595
+ - expert
596
+ - full
597
+ datasources:
598
+ - sql
599
+ tags:
600
+ - database
601
+ - indexing
602
+ - performance
603
+ - queries
604
+ category: Database
605
+ api-basics:
606
+ path: api/basics.md
607
+ levels:
608
+ - basic
609
+ - standard
610
+ - expert
611
+ - full
612
+ tags:
613
+ - api
614
+ - http
615
+ - rest
616
+ - status-codes
617
+ - fundamentals
618
+ category: API Design
619
+ api-rest:
620
+ path: api/rest.md
621
+ levels:
622
+ - standard
623
+ - expert
624
+ - full
625
+ tags:
626
+ - api
627
+ - rest
628
+ - http
629
+ - design
630
+ category: API Design
631
+ api-pagination:
632
+ path: api/pagination.md
633
+ levels:
634
+ - standard
635
+ - expert
636
+ - full
637
+ tags:
638
+ - api
639
+ - pagination
640
+ - cursor
641
+ - offset
642
+ category: API Design
643
+ code-style-naming:
644
+ path: style/naming.md
645
+ levels:
646
+ - basic
647
+ - standard
648
+ - expert
649
+ - full
650
+ tags:
651
+ - style
652
+ - naming
653
+ - conventions
654
+ category: Code Style
655
+ code-style-organization:
656
+ path: style/organization.md
657
+ levels:
658
+ - standard
659
+ - expert
660
+ - full
661
+ tags:
662
+ - style
663
+ - organization
664
+ - structure
665
+ - srp
666
+ category: Code Style
667
+ error-handling-strategy:
668
+ path: error-handling/strategy.md
669
+ levels:
670
+ - standard
671
+ - expert
672
+ - full
673
+ tags:
674
+ - errors
675
+ - exceptions
676
+ - resilience
677
+ - retry
678
+ category: Error Handling
679
+ error-handling-basics:
680
+ path: error-handling/basics.md
681
+ levels:
682
+ - basic
683
+ - standard
684
+ - expert
685
+ - full
686
+ tags:
687
+ - errors
688
+ - exceptions
689
+ - try-catch
690
+ - fundamentals
691
+ category: Error Handling
692
+ solid-principles:
693
+ path: architecture/solid/principles.md
694
+ levels:
695
+ - standard
696
+ - expert
697
+ - full
698
+ tags:
699
+ - solid
700
+ - srp
701
+ - ocp
702
+ - lsp
703
+ - isp
704
+ - dip
705
+ - design-principles
706
+ category: Architecture
707
+ clean-architecture-layers:
708
+ path: architecture/clean-architecture/layers.md
709
+ architectures:
710
+ - clean-architecture
711
+ levels:
712
+ - standard
713
+ - expert
714
+ - full
715
+ tags:
716
+ - clean-architecture
717
+ - layers
718
+ - dependency-rule
719
+ - use-cases
720
+ category: Architecture
721
+ ddd-tactical:
722
+ path: architecture/ddd/tactical.md
723
+ architectures:
724
+ - ddd
725
+ levels:
726
+ - standard
727
+ - expert
728
+ - full
729
+ tags:
730
+ - ddd
731
+ - entities
732
+ - value-objects
733
+ - aggregates
734
+ - domain-events
735
+ category: Architecture
736
+ ddd-strategic:
737
+ path: architecture/ddd/strategic.md
738
+ architectures:
739
+ - ddd
740
+ levels:
741
+ - expert
742
+ - full
743
+ tags:
744
+ - ddd
745
+ - bounded-context
746
+ - ubiquitous-language
747
+ - context-mapping
748
+ category: Architecture
749
+ event-driven-patterns:
750
+ path: architecture/event-driven/patterns.md
751
+ architectures:
752
+ - event-driven
753
+ levels:
754
+ - expert
755
+ - full
756
+ tags:
757
+ - event-sourcing
758
+ - cqrs
759
+ - saga
760
+ - event-driven
761
+ category: Architecture
762
+ event-driven-messaging:
763
+ path: architecture/event-driven/messaging.md
764
+ architectures:
765
+ - event-driven
766
+ levels:
767
+ - standard
768
+ - expert
769
+ - full
770
+ tags:
771
+ - messaging
772
+ - queues
773
+ - outbox
774
+ - delivery
775
+ category: Architecture
776
+ layered-architecture:
777
+ path: architecture/layered/layers.md
778
+ architectures:
779
+ - layered
780
+ levels:
781
+ - standard
782
+ - expert
783
+ - full
784
+ tags:
785
+ - layered
786
+ - presentation
787
+ - domain
788
+ - data-access
789
+ category: Architecture
790
+ serverless-patterns:
791
+ path: architecture/serverless/patterns.md
792
+ architectures:
793
+ - serverless
794
+ levels:
795
+ - standard
796
+ - expert
797
+ - full
798
+ tags:
799
+ - serverless
800
+ - faas
801
+ - lambda
802
+ - cold-start
803
+ category: Architecture
804
+ serverless-best-practices:
805
+ path: architecture/serverless/best-practices.md
806
+ architectures:
807
+ - serverless
808
+ levels:
809
+ - standard
810
+ - expert
811
+ - full
812
+ tags:
813
+ - serverless
814
+ - optimization
815
+ - security
816
+ - monitoring
817
+ category: Architecture
818
+ hexagonal-architecture:
819
+ path: architecture/hexagonal/ports-adapters.md
820
+ architectures:
821
+ - hexagonal
822
+ levels:
823
+ - standard
824
+ - expert
825
+ - full
826
+ tags:
827
+ - hexagonal
828
+ - ports-adapters
829
+ - dependency-inversion
830
+ - clean-code
831
+ category: Architecture
832
+ gui-architecture:
833
+ path: architecture/gui/patterns.md
834
+ levels:
835
+ - standard
836
+ - expert
837
+ - full
838
+ tags:
839
+ - gui
840
+ - mvc
841
+ - mvp
842
+ - mvvm
843
+ - component-architecture
844
+ category: Architecture
845
+ feature-toggles:
846
+ path: architecture/feature-toggles/patterns.md
847
+ levels:
848
+ - standard
849
+ - expert
850
+ - full
851
+ tags:
852
+ - feature-flags
853
+ - release-toggles
854
+ - ab-testing
855
+ category: Architecture
856
+ devops-ci-cd:
857
+ path: devops/ci-cd.md
858
+ levels:
859
+ - standard
860
+ - expert
861
+ - full
862
+ tags:
863
+ - devops
864
+ - ci
865
+ - cd
866
+ - deployment
867
+ - pipelines
868
+ category: DevOps
869
+ devops-practices:
870
+ path: devops/practices.md
871
+ levels:
872
+ - expert
873
+ - full
874
+ tags:
875
+ - devops
876
+ - infrastructure
877
+ - observability
878
+ - containers
879
+ category: DevOps
880
+ devops-observability:
881
+ path: devops/observability.md
882
+ levels:
883
+ - standard
884
+ - expert
885
+ - full
886
+ tags:
887
+ - devops
888
+ - observability
889
+ - logging
890
+ - metrics
891
+ - tracing
892
+ category: DevOps
893
+ practices-planning:
894
+ path: practices/planning.md
895
+ levels:
896
+ - standard
897
+ - expert
898
+ - full
899
+ tags:
900
+ - planning
901
+ - phases
902
+ - communication
903
+ - requirements
904
+ - approval
905
+ category: Best Practices
906
+ practices-documentation:
907
+ path: practices/documentation.md
908
+ levels:
909
+ - standard
910
+ - expert
911
+ - full
912
+ tags:
913
+ - documentation
914
+ - organization
915
+ - memory-lane
916
+ - context
917
+ - structure
918
+ category: Best Practices
919
+ practices-code-review:
920
+ path: practices/code-review.md
921
+ levels:
922
+ - standard
923
+ - expert
924
+ - full
925
+ tags:
926
+ - code-review
927
+ - pr
928
+ - feedback
929
+ - collaboration
930
+ category: Best Practices
931
+ practices-refactoring:
932
+ path: practices/refactoring.md
933
+ levels:
934
+ - standard
935
+ - expert
936
+ - full
937
+ tags:
938
+ - refactoring
939
+ - code-smells
940
+ - clean-code
941
+ category: Best Practices
942
+ practices-version-control:
943
+ path: practices/version-control.md
944
+ levels:
945
+ - basic
946
+ - standard
947
+ - expert
948
+ - full
949
+ tags:
950
+ - git
951
+ - branching
952
+ - commits
953
+ - version-control
954
+ category: Best Practices
955
+ api-versioning:
956
+ path: api/versioning.md
957
+ levels:
958
+ - standard
959
+ - expert
960
+ - full
961
+ tags:
962
+ - api
963
+ - versioning
964
+ - deprecation
965
+ - backwards-compatibility
966
+ category: API Design
967
+ performance-caching-strategies:
968
+ path: performance/caching-strategies.md
969
+ levels:
970
+ - expert
971
+ - full
972
+ tags:
973
+ - caching
974
+ - cache-aside
975
+ - write-through
976
+ - invalidation
977
+ category: Performance
978
+ database-design-patterns:
979
+ path: database/design-patterns.md
980
+ levels:
981
+ - standard
982
+ - expert
983
+ - full
984
+ datasources:
985
+ - sql
986
+ tags:
987
+ - database
988
+ - normalization
989
+ - denormalization
990
+ - soft-deletes
991
+ category: Database
992
+ database-nosql:
993
+ path: database/nosql.md
994
+ levels:
995
+ - standard
996
+ - expert
997
+ - full
998
+ datasources:
999
+ - nosql
1000
+ tags:
1001
+ - database
1002
+ - nosql
1003
+ - mongodb
1004
+ - dynamodb
1005
+ - redis
1006
+ category: Database
1007
+ patterns-base:
1008
+ path: patterns/base-patterns.md
1009
+ levels:
1010
+ - standard
1011
+ - expert
1012
+ - full
1013
+ tags:
1014
+ - value-object
1015
+ - money
1016
+ - special-case
1017
+ - registry
1018
+ - plugin
1019
+ category: Design Patterns
1020
+ patterns-concurrency:
1021
+ path: patterns/concurrency.md
1022
+ levels:
1023
+ - expert
1024
+ - full
1025
+ tags:
1026
+ - concurrency
1027
+ - optimistic-lock
1028
+ - pessimistic-lock
1029
+ - locking
1030
+ category: Design Patterns
1031
+ patterns-data-access:
1032
+ path: patterns/data-access.md
1033
+ levels:
1034
+ - standard
1035
+ - expert
1036
+ - full
1037
+ tags:
1038
+ - repository
1039
+ - data-mapper
1040
+ - active-record
1041
+ - unit-of-work
1042
+ category: Design Patterns
1043
+ patterns-distribution:
1044
+ path: patterns/distribution.md
1045
+ levels:
1046
+ - expert
1047
+ - full
1048
+ tags:
1049
+ - remote-facade
1050
+ - dto
1051
+ - gateway
1052
+ - service-stub
1053
+ category: Design Patterns
1054
+ patterns-domain-logic:
1055
+ path: patterns/domain-logic.md
1056
+ levels:
1057
+ - standard
1058
+ - expert
1059
+ - full
1060
+ tags:
1061
+ - transaction-script
1062
+ - domain-model
1063
+ - service-layer
1064
+ category: Design Patterns
1065
+ patterns-gof:
1066
+ path: patterns/gof.md
1067
+ levels:
1068
+ - standard
1069
+ - expert
1070
+ - full
1071
+ tags:
1072
+ - gang-of-four
1073
+ - factory
1074
+ - strategy
1075
+ - observer
1076
+ - decorator
1077
+ category: Design Patterns