@mytechtoday/augment-extensions 1.3.0 → 1.4.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 (232) hide show
  1. package/LICENSE +22 -22
  2. package/README.md +105 -6
  3. package/augment-extensions/domain-rules/software-architecture/README.md +143 -143
  4. package/augment-extensions/domain-rules/software-architecture/examples/banking-layered.md +961 -961
  5. package/augment-extensions/domain-rules/software-architecture/examples/ecommerce-microservices.md +990 -990
  6. package/augment-extensions/domain-rules/software-architecture/examples/iot-eventdriven.md +882 -882
  7. package/augment-extensions/domain-rules/software-architecture/examples/monolith-to-microservices-migration.md +703 -703
  8. package/augment-extensions/domain-rules/software-architecture/examples/serverless-imageprocessing.md +957 -957
  9. package/augment-extensions/domain-rules/software-architecture/examples/trading-eventdriven.md +747 -747
  10. package/augment-extensions/domain-rules/software-architecture/module.json +119 -119
  11. package/augment-extensions/domain-rules/software-architecture/rules/challenges-solutions.md +763 -763
  12. package/augment-extensions/domain-rules/software-architecture/rules/definitions-terminology.md +409 -409
  13. package/augment-extensions/domain-rules/software-architecture/rules/design-principles.md +684 -684
  14. package/augment-extensions/domain-rules/software-architecture/rules/evaluation-testing.md +1381 -1381
  15. package/augment-extensions/domain-rules/software-architecture/rules/event-driven-architecture.md +616 -616
  16. package/augment-extensions/domain-rules/software-architecture/rules/fundamentals.md +306 -306
  17. package/augment-extensions/domain-rules/software-architecture/rules/industry-architectures.md +554 -554
  18. package/augment-extensions/domain-rules/software-architecture/rules/layered-architecture.md +776 -776
  19. package/augment-extensions/domain-rules/software-architecture/rules/microservices-architecture.md +503 -503
  20. package/augment-extensions/domain-rules/software-architecture/rules/modeling-documentation.md +1199 -1199
  21. package/augment-extensions/domain-rules/software-architecture/rules/monolithic-architecture.md +351 -351
  22. package/augment-extensions/domain-rules/software-architecture/rules/principles.md +556 -556
  23. package/augment-extensions/domain-rules/software-architecture/rules/quality-attributes.md +797 -797
  24. package/augment-extensions/domain-rules/software-architecture/rules/scalability-performance.md +1345 -1345
  25. package/augment-extensions/domain-rules/software-architecture/rules/security-architecture.md +1039 -1039
  26. package/augment-extensions/domain-rules/software-architecture/rules/serverless-architecture.md +711 -711
  27. package/augment-extensions/domain-rules/software-architecture/rules/skills-development.md +568 -568
  28. package/augment-extensions/domain-rules/software-architecture/rules/tools-methodologies.md +961 -961
  29. package/augment-extensions/visual-design/CHANGELOG.md +132 -132
  30. package/augment-extensions/visual-design/README.md +255 -255
  31. package/augment-extensions/visual-design/__tests__/README.md +119 -119
  32. package/augment-extensions/visual-design/__tests__/style-selector.test.ts +172 -172
  33. package/augment-extensions/visual-design/__tests__/vendor-styles.test.ts +214 -214
  34. package/augment-extensions/visual-design/domains/other/ai-prompt-helper.ts +157 -157
  35. package/augment-extensions/visual-design/domains/other/dotnet-application.ts +156 -156
  36. package/augment-extensions/visual-design/domains/other/linux-platform.ts +156 -156
  37. package/augment-extensions/visual-design/domains/other/mobile-application.ts +157 -157
  38. package/augment-extensions/visual-design/domains/other/motion-picture.ts +156 -156
  39. package/augment-extensions/visual-design/domains/other/os-application.ts +156 -156
  40. package/augment-extensions/visual-design/domains/other/print-campaigns.ts +158 -158
  41. package/augment-extensions/visual-design/domains/other/web-app.ts +157 -157
  42. package/augment-extensions/visual-design/domains/other/website.ts +161 -161
  43. package/augment-extensions/visual-design/domains/other/windows-platform.ts +156 -156
  44. package/augment-extensions/visual-design/domains/web-page-styles/amazon-cloudscape.ts +506 -506
  45. package/augment-extensions/visual-design/domains/web-page-styles/google-modern.ts +615 -615
  46. package/augment-extensions/visual-design/domains/web-page-styles/microsoft-fluent.ts +531 -531
  47. package/augment-extensions/visual-design/examples/README.md +97 -97
  48. package/augment-extensions/visual-design/examples/ai-prompt-generation.md +233 -233
  49. package/augment-extensions/visual-design/examples/basic-usage.md +216 -216
  50. package/augment-extensions/visual-design/examples/domain-workflows.md +257 -257
  51. package/augment-extensions/visual-design/examples/vendor-comparison.md +247 -247
  52. package/augment-extensions/visual-design/module.json +78 -78
  53. package/augment-extensions/visual-design/style-selector.ts +177 -177
  54. package/augment-extensions/visual-design/types.ts +302 -302
  55. package/augment-extensions/visual-design/visual-design-core.ts +469 -469
  56. package/augment-extensions/workflows/adr-support/README.md +227 -227
  57. package/augment-extensions/workflows/adr-support/__tests__/adr-validator.test.ts +203 -203
  58. package/augment-extensions/workflows/adr-support/adr-validator.ts +162 -162
  59. package/augment-extensions/workflows/adr-support/examples/complete-lifecycle-example.md +449 -449
  60. package/augment-extensions/workflows/adr-support/examples/integration-example.md +580 -580
  61. package/augment-extensions/workflows/adr-support/examples/superseding-example.md +436 -436
  62. package/augment-extensions/workflows/adr-support/module.json +112 -112
  63. package/augment-extensions/workflows/adr-support/rules/adr-creation.md +372 -372
  64. package/augment-extensions/workflows/adr-support/rules/beads-integration.md +443 -443
  65. package/augment-extensions/workflows/adr-support/rules/conflict-detection.md +486 -486
  66. package/augment-extensions/workflows/adr-support/rules/decision-detection.md +362 -362
  67. package/augment-extensions/workflows/adr-support/rules/lifecycle-management.md +427 -427
  68. package/augment-extensions/workflows/adr-support/rules/openspec-integration.md +465 -465
  69. package/augment-extensions/workflows/adr-support/rules/template-selection.md +405 -405
  70. package/augment-extensions/workflows/adr-support/rules/validation-rules.md +543 -543
  71. package/augment-extensions/workflows/adr-support/schemas/adr-config.json +191 -191
  72. package/augment-extensions/workflows/adr-support/schemas/adr-metadata.json +172 -172
  73. package/augment-extensions/workflows/adr-support/templates/business-case.md +235 -235
  74. package/augment-extensions/workflows/adr-support/templates/madr-elaborate.md +197 -197
  75. package/augment-extensions/workflows/adr-support/templates/madr-simple.md +68 -68
  76. package/augment-extensions/workflows/adr-support/templates/nygard.md +84 -84
  77. package/augment-extensions/writing-standards/screenplay/rules/file-organization.md +213 -213
  78. package/augment-extensions/writing-standards/screenplay/utils/__tests__/file-organization.test.ts +169 -169
  79. package/augment-extensions/writing-standards/screenplay/utils/file-organization.ts +165 -165
  80. package/cli/dist/commands/agent.d.ts +37 -0
  81. package/cli/dist/commands/agent.d.ts.map +1 -0
  82. package/cli/dist/commands/agent.js +222 -0
  83. package/cli/dist/commands/agent.js.map +1 -0
  84. package/cli/dist/commands/beads.d.ts +64 -0
  85. package/cli/dist/commands/beads.d.ts.map +1 -0
  86. package/cli/dist/commands/beads.js +377 -0
  87. package/cli/dist/commands/beads.js.map +1 -0
  88. package/cli/dist/commands/change.d.ts +54 -0
  89. package/cli/dist/commands/change.d.ts.map +1 -0
  90. package/cli/dist/commands/change.js +243 -0
  91. package/cli/dist/commands/change.js.map +1 -0
  92. package/cli/dist/commands/clean.d.ts +15 -0
  93. package/cli/dist/commands/clean.d.ts.map +1 -0
  94. package/cli/dist/commands/clean.js +63 -0
  95. package/cli/dist/commands/clean.js.map +1 -0
  96. package/cli/dist/commands/clone.d.ts +15 -0
  97. package/cli/dist/commands/clone.d.ts.map +1 -0
  98. package/cli/dist/commands/clone.js +49 -0
  99. package/cli/dist/commands/clone.js.map +1 -0
  100. package/cli/dist/commands/config.d.ts +33 -0
  101. package/cli/dist/commands/config.d.ts.map +1 -0
  102. package/cli/dist/commands/config.js +166 -0
  103. package/cli/dist/commands/config.js.map +1 -0
  104. package/cli/dist/commands/context.d.ts +38 -0
  105. package/cli/dist/commands/context.d.ts.map +1 -0
  106. package/cli/dist/commands/context.js +205 -0
  107. package/cli/dist/commands/context.js.map +1 -0
  108. package/cli/dist/commands/create.d.ts +18 -0
  109. package/cli/dist/commands/create.d.ts.map +1 -0
  110. package/cli/dist/commands/create.js +178 -0
  111. package/cli/dist/commands/create.js.map +1 -0
  112. package/cli/dist/commands/diff.d.ts +19 -0
  113. package/cli/dist/commands/diff.d.ts.map +1 -0
  114. package/cli/dist/commands/diff.js +104 -0
  115. package/cli/dist/commands/diff.js.map +1 -0
  116. package/cli/dist/commands/doctor.d.ts +14 -0
  117. package/cli/dist/commands/doctor.d.ts.map +1 -0
  118. package/cli/dist/commands/doctor.js +62 -0
  119. package/cli/dist/commands/doctor.js.map +1 -0
  120. package/cli/dist/commands/export.d.ts +28 -0
  121. package/cli/dist/commands/export.d.ts.map +1 -0
  122. package/cli/dist/commands/export.js +135 -0
  123. package/cli/dist/commands/export.js.map +1 -0
  124. package/cli/dist/commands/import.d.ts +23 -0
  125. package/cli/dist/commands/import.d.ts.map +1 -0
  126. package/cli/dist/commands/import.js +118 -0
  127. package/cli/dist/commands/import.js.map +1 -0
  128. package/cli/dist/commands/prompt.d.ts +45 -0
  129. package/cli/dist/commands/prompt.d.ts.map +1 -0
  130. package/cli/dist/commands/prompt.js +223 -0
  131. package/cli/dist/commands/prompt.js.map +1 -0
  132. package/cli/dist/commands/spec.d.ts +57 -0
  133. package/cli/dist/commands/spec.d.ts.map +1 -0
  134. package/cli/dist/commands/spec.js +279 -0
  135. package/cli/dist/commands/spec.js.map +1 -0
  136. package/cli/dist/commands/stats.d.ts +18 -0
  137. package/cli/dist/commands/stats.d.ts.map +1 -0
  138. package/cli/dist/commands/stats.js +85 -0
  139. package/cli/dist/commands/stats.js.map +1 -0
  140. package/cli/dist/commands/task.d.ts +65 -0
  141. package/cli/dist/commands/task.d.ts.map +1 -0
  142. package/cli/dist/commands/task.js +282 -0
  143. package/cli/dist/commands/task.js.map +1 -0
  144. package/cli/dist/commands/template.d.ts +17 -0
  145. package/cli/dist/commands/template.d.ts.map +1 -0
  146. package/cli/dist/commands/template.js +55 -0
  147. package/cli/dist/commands/template.js.map +1 -0
  148. package/cli/dist/utils/agent-config.d.ts +129 -0
  149. package/cli/dist/utils/agent-config.d.ts.map +1 -0
  150. package/cli/dist/utils/agent-config.js +297 -0
  151. package/cli/dist/utils/agent-config.js.map +1 -0
  152. package/cli/dist/utils/auto-sync.js +19 -19
  153. package/cli/dist/utils/beads-graph.d.ts +17 -0
  154. package/cli/dist/utils/beads-graph.d.ts.map +1 -0
  155. package/cli/dist/utils/beads-graph.js +150 -0
  156. package/cli/dist/utils/beads-graph.js.map +1 -0
  157. package/cli/dist/utils/beads-integration.d.ts +112 -0
  158. package/cli/dist/utils/beads-integration.d.ts.map +1 -0
  159. package/cli/dist/utils/beads-integration.js +312 -0
  160. package/cli/dist/utils/beads-integration.js.map +1 -0
  161. package/cli/dist/utils/beads-reporter.d.ts +17 -0
  162. package/cli/dist/utils/beads-reporter.d.ts.map +1 -0
  163. package/cli/dist/utils/beads-reporter.js +160 -0
  164. package/cli/dist/utils/beads-reporter.js.map +1 -0
  165. package/cli/dist/utils/cache-manager.d.ts +55 -0
  166. package/cli/dist/utils/cache-manager.d.ts.map +1 -0
  167. package/cli/dist/utils/cache-manager.js +150 -0
  168. package/cli/dist/utils/cache-manager.js.map +1 -0
  169. package/cli/dist/utils/change-manager.d.ts +70 -0
  170. package/cli/dist/utils/change-manager.d.ts.map +1 -0
  171. package/cli/dist/utils/change-manager.js +412 -0
  172. package/cli/dist/utils/change-manager.js.map +1 -0
  173. package/cli/dist/utils/config-manager-enhanced.d.ts +66 -0
  174. package/cli/dist/utils/config-manager-enhanced.d.ts.map +1 -0
  175. package/cli/dist/utils/config-manager-enhanced.js +77 -0
  176. package/cli/dist/utils/config-manager-enhanced.js.map +1 -0
  177. package/cli/dist/utils/context-manager.d.ts +96 -0
  178. package/cli/dist/utils/context-manager.d.ts.map +1 -0
  179. package/cli/dist/utils/context-manager.js +258 -0
  180. package/cli/dist/utils/context-manager.js.map +1 -0
  181. package/cli/dist/utils/diff-engine.d.ts +78 -0
  182. package/cli/dist/utils/diff-engine.d.ts.map +1 -0
  183. package/cli/dist/utils/diff-engine.js +233 -0
  184. package/cli/dist/utils/diff-engine.js.map +1 -0
  185. package/cli/dist/utils/export-system.d.ts +101 -0
  186. package/cli/dist/utils/export-system.d.ts.map +1 -0
  187. package/cli/dist/utils/export-system.js +289 -0
  188. package/cli/dist/utils/export-system.js.map +1 -0
  189. package/cli/dist/utils/health-checker.d.ts +66 -0
  190. package/cli/dist/utils/health-checker.d.ts.map +1 -0
  191. package/cli/dist/utils/health-checker.js +285 -0
  192. package/cli/dist/utils/health-checker.js.map +1 -0
  193. package/cli/dist/utils/import-system.d.ts +74 -0
  194. package/cli/dist/utils/import-system.d.ts.map +1 -0
  195. package/cli/dist/utils/import-system.js +317 -0
  196. package/cli/dist/utils/import-system.js.map +1 -0
  197. package/cli/dist/utils/module-cloner.d.ts +40 -0
  198. package/cli/dist/utils/module-cloner.d.ts.map +1 -0
  199. package/cli/dist/utils/module-cloner.js +136 -0
  200. package/cli/dist/utils/module-cloner.js.map +1 -0
  201. package/cli/dist/utils/prompt-manager.d.ts +90 -0
  202. package/cli/dist/utils/prompt-manager.d.ts.map +1 -0
  203. package/cli/dist/utils/prompt-manager.js +302 -0
  204. package/cli/dist/utils/prompt-manager.js.map +1 -0
  205. package/cli/dist/utils/spec-manager.d.ts +65 -0
  206. package/cli/dist/utils/spec-manager.d.ts.map +1 -0
  207. package/cli/dist/utils/spec-manager.js +329 -0
  208. package/cli/dist/utils/spec-manager.js.map +1 -0
  209. package/cli/dist/utils/stats-collector.d.ts +74 -0
  210. package/cli/dist/utils/stats-collector.d.ts.map +1 -0
  211. package/cli/dist/utils/stats-collector.js +164 -0
  212. package/cli/dist/utils/stats-collector.js.map +1 -0
  213. package/cli/dist/utils/template-engine.d.ts +47 -0
  214. package/cli/dist/utils/template-engine.d.ts.map +1 -0
  215. package/cli/dist/utils/template-engine.js +204 -0
  216. package/cli/dist/utils/template-engine.js.map +1 -0
  217. package/package.json +12 -3
  218. package/augment-extensions/workflows/openspec/README.md +0 -96
  219. package/augment-extensions/workflows/openspec/examples/complete-change-example.md +0 -244
  220. package/augment-extensions/workflows/openspec/module.json +0 -54
  221. package/augment-extensions/workflows/openspec/rules/best-practices.md +0 -272
  222. package/augment-extensions/workflows/openspec/rules/manual-setup.md +0 -231
  223. package/augment-extensions/workflows/openspec/rules/spec-format.md +0 -236
  224. package/augment-extensions/workflows/openspec/rules/workflow.md +0 -214
  225. package/cli/dist/utils/__tests__/adr-validator.example.d.ts +0 -6
  226. package/cli/dist/utils/__tests__/adr-validator.example.d.ts.map +0 -1
  227. package/cli/dist/utils/__tests__/adr-validator.example.js +0 -148
  228. package/cli/dist/utils/__tests__/adr-validator.example.js.map +0 -1
  229. package/cli/dist/utils/adr-validator.d.ts +0 -65
  230. package/cli/dist/utils/adr-validator.d.ts.map +0 -1
  231. package/cli/dist/utils/adr-validator.js +0 -203
  232. package/cli/dist/utils/adr-validator.js.map +0 -1
@@ -1,156 +1,156 @@
1
- /**
2
- * Linux Platform Domain Module
3
- *
4
- * Linux-specific application design patterns following
5
- * GNOME HIG, KDE HIG, and freedesktop.org standards.
6
- */
7
-
8
- import { DomainStyle, ColorPalette, TypographyRules, LayoutSystem } from '../../types';
9
-
10
- // ============================================================================
11
- // Linux Platform Color Palette
12
- // ============================================================================
13
-
14
- const LINUX_COLORS: ColorPalette = {
15
- primary: {
16
- name: 'Blue Accent',
17
- hex: '#3584E4',
18
- rgb: { r: 53, g: 132, b: 228 },
19
- hsl: { h: 213, s: 76, l: 55 },
20
- variants: [
21
- { name: 'Blue Light', hex: '#62A0EA', usage: 'Hover states' },
22
- { name: 'Blue Dark', hex: '#1C71D8', usage: 'Active states' }
23
- ]
24
- },
25
- neutral: [
26
- { name: 'White', hex: '#FFFFFF', rgb: { r: 255, g: 255, b: 255 }, hsl: { h: 0, s: 0, l: 100 } },
27
- { name: 'Light 1', hex: '#F6F5F4', rgb: { r: 246, g: 245, b: 244 }, hsl: { h: 30, s: 11, l: 96 } },
28
- { name: 'Light 2', hex: '#DEDDDA', rgb: { r: 222, g: 221, b: 218 }, hsl: { h: 45, s: 9, l: 86 } },
29
- { name: 'Dark 3', hex: '#5E5C64', rgb: { r: 94, g: 92, b: 100 }, hsl: { h: 255, s: 4, l: 38 } },
30
- { name: 'Dark 5', hex: '#241F31', rgb: { r: 36, g: 31, b: 49 }, hsl: { h: 257, s: 23, l: 16 } }
31
- ],
32
- semantic: {
33
- success: { hex: '#26A269', usage: 'Success states' },
34
- warning: { hex: '#E5A50A', usage: 'Warnings' },
35
- error: { hex: '#C01C28', usage: 'Errors, destructive actions' },
36
- info: { hex: '#3584E4', usage: 'Information' }
37
- },
38
- accessibility: {
39
- minimumContrast: 4.5,
40
- targetContrast: 7,
41
- colorBlindSafe: true,
42
- guidelines: [
43
- 'Follow GNOME HIG color guidelines',
44
- 'Support GTK theme integration',
45
- 'Respect system dark/light preference',
46
- 'Test with Orca screen reader'
47
- ]
48
- }
49
- };
50
-
51
- // ============================================================================
52
- // Linux Platform Typography
53
- // ============================================================================
54
-
55
- const LINUX_TYPOGRAPHY: TypographyRules = {
56
- fontFamilies: {
57
- primary: '"Cantarell", "Ubuntu", "Noto Sans", sans-serif',
58
- secondary: 'system-ui, sans-serif',
59
- monospace: '"Source Code Pro", "Liberation Mono", monospace'
60
- },
61
- hierarchy: {
62
- h1: { fontSize: '24px', fontWeight: 700, lineHeight: 1.3, letterSpacing: '0' },
63
- h2: { fontSize: '20px', fontWeight: 700, lineHeight: 1.4, letterSpacing: '0' },
64
- h3: { fontSize: '16px', fontWeight: 700, lineHeight: 1.4, letterSpacing: '0' },
65
- h4: { fontSize: '14px', fontWeight: 700, lineHeight: 1.5, letterSpacing: '0' },
66
- h5: { fontSize: '12px', fontWeight: 700, lineHeight: 1.5, letterSpacing: '0' },
67
- h6: { fontSize: '11px', fontWeight: 700, lineHeight: 1.5, letterSpacing: '0' },
68
- body: { fontSize: '11px', fontWeight: 400, lineHeight: 1.5, letterSpacing: '0' },
69
- small: { fontSize: '10px', fontWeight: 400, lineHeight: 1.4, letterSpacing: '0' },
70
- caption: { fontSize: '9px', fontWeight: 400, lineHeight: 1.3, letterSpacing: '0' }
71
- },
72
- scale: {
73
- base: 11,
74
- ratio: 1.2,
75
- sizes: [9, 10, 11, 12, 14, 16, 20, 24]
76
- },
77
- guidelines: [
78
- 'Use Cantarell for GNOME applications',
79
- 'Use Ubuntu font for Ubuntu-based apps',
80
- 'Follow freedesktop.org font standards',
81
- 'Support font scaling preferences',
82
- 'Ensure readability at small sizes'
83
- ]
84
- };
85
-
86
- // ============================================================================
87
- // Linux Platform Layout System
88
- // ============================================================================
89
-
90
- const LINUX_LAYOUT: LayoutSystem = {
91
- grid: {
92
- columns: 12,
93
- gutter: '12px',
94
- margin: '12px',
95
- breakpoints: {
96
- compact: '0-639px',
97
- medium: '640-1023px',
98
- expanded: '1024px+'
99
- }
100
- },
101
- spacing: {
102
- unit: 6,
103
- scale: [0, 6, 12, 18, 24, 30, 36, 48],
104
- guidelines: [
105
- 'Use 6px base unit (GNOME HIG)',
106
- 'Follow GTK spacing conventions',
107
- 'Maintain consistent padding',
108
- 'Use headerbar for window controls'
109
- ]
110
- },
111
- containerWidths: {
112
- compact: '100%',
113
- medium: '100%',
114
- expanded: '100%'
115
- },
116
- guidelines: [
117
- 'Use GTK/Qt widgets and patterns',
118
- 'Implement headerbar with window controls',
119
- 'Follow GNOME HIG or KDE HIG guidelines',
120
- 'Support keyboard navigation',
121
- 'Integrate with desktop environment',
122
- 'Use native file choosers and dialogs'
123
- ]
124
- };
125
-
126
- // ============================================================================
127
- // Linux Platform Domain Export
128
- // ============================================================================
129
-
130
- export const LINUX_PLATFORM_DOMAIN: DomainStyle = {
131
- domain: 'linux-platform',
132
- characteristics: [
133
- 'GTK or Qt widget toolkit integration',
134
- 'Headerbar with integrated window controls',
135
- 'Desktop environment theme integration',
136
- 'D-Bus integration for system services',
137
- 'XDG standards compliance',
138
- 'Keyboard-first navigation',
139
- 'Native file chooser dialogs',
140
- 'System tray/notification area support',
141
- 'Wayland and X11 compatibility',
142
- 'Flatpak/Snap packaging support'
143
- ],
144
- colorScheme: LINUX_COLORS,
145
- typography: LINUX_TYPOGRAPHY,
146
- layout: LINUX_LAYOUT,
147
- examples: [
148
- 'GNOME application with headerbar',
149
- 'KDE Plasma application with menu bar',
150
- 'File manager with sidebar navigation',
151
- 'Terminal emulator with tabs',
152
- 'System settings application',
153
- 'Text editor with syntax highlighting'
154
- ]
155
- };
156
-
1
+ /**
2
+ * Linux Platform Domain Module
3
+ *
4
+ * Linux-specific application design patterns following
5
+ * GNOME HIG, KDE HIG, and freedesktop.org standards.
6
+ */
7
+
8
+ import { DomainStyle, ColorPalette, TypographyRules, LayoutSystem } from '../../types';
9
+
10
+ // ============================================================================
11
+ // Linux Platform Color Palette
12
+ // ============================================================================
13
+
14
+ const LINUX_COLORS: ColorPalette = {
15
+ primary: {
16
+ name: 'Blue Accent',
17
+ hex: '#3584E4',
18
+ rgb: { r: 53, g: 132, b: 228 },
19
+ hsl: { h: 213, s: 76, l: 55 },
20
+ variants: [
21
+ { name: 'Blue Light', hex: '#62A0EA', usage: 'Hover states' },
22
+ { name: 'Blue Dark', hex: '#1C71D8', usage: 'Active states' }
23
+ ]
24
+ },
25
+ neutral: [
26
+ { name: 'White', hex: '#FFFFFF', rgb: { r: 255, g: 255, b: 255 }, hsl: { h: 0, s: 0, l: 100 } },
27
+ { name: 'Light 1', hex: '#F6F5F4', rgb: { r: 246, g: 245, b: 244 }, hsl: { h: 30, s: 11, l: 96 } },
28
+ { name: 'Light 2', hex: '#DEDDDA', rgb: { r: 222, g: 221, b: 218 }, hsl: { h: 45, s: 9, l: 86 } },
29
+ { name: 'Dark 3', hex: '#5E5C64', rgb: { r: 94, g: 92, b: 100 }, hsl: { h: 255, s: 4, l: 38 } },
30
+ { name: 'Dark 5', hex: '#241F31', rgb: { r: 36, g: 31, b: 49 }, hsl: { h: 257, s: 23, l: 16 } }
31
+ ],
32
+ semantic: {
33
+ success: { hex: '#26A269', usage: 'Success states' },
34
+ warning: { hex: '#E5A50A', usage: 'Warnings' },
35
+ error: { hex: '#C01C28', usage: 'Errors, destructive actions' },
36
+ info: { hex: '#3584E4', usage: 'Information' }
37
+ },
38
+ accessibility: {
39
+ minimumContrast: 4.5,
40
+ targetContrast: 7,
41
+ colorBlindSafe: true,
42
+ guidelines: [
43
+ 'Follow GNOME HIG color guidelines',
44
+ 'Support GTK theme integration',
45
+ 'Respect system dark/light preference',
46
+ 'Test with Orca screen reader'
47
+ ]
48
+ }
49
+ };
50
+
51
+ // ============================================================================
52
+ // Linux Platform Typography
53
+ // ============================================================================
54
+
55
+ const LINUX_TYPOGRAPHY: TypographyRules = {
56
+ fontFamilies: {
57
+ primary: '"Cantarell", "Ubuntu", "Noto Sans", sans-serif',
58
+ secondary: 'system-ui, sans-serif',
59
+ monospace: '"Source Code Pro", "Liberation Mono", monospace'
60
+ },
61
+ hierarchy: {
62
+ h1: { fontSize: '24px', fontWeight: 700, lineHeight: 1.3, letterSpacing: '0' },
63
+ h2: { fontSize: '20px', fontWeight: 700, lineHeight: 1.4, letterSpacing: '0' },
64
+ h3: { fontSize: '16px', fontWeight: 700, lineHeight: 1.4, letterSpacing: '0' },
65
+ h4: { fontSize: '14px', fontWeight: 700, lineHeight: 1.5, letterSpacing: '0' },
66
+ h5: { fontSize: '12px', fontWeight: 700, lineHeight: 1.5, letterSpacing: '0' },
67
+ h6: { fontSize: '11px', fontWeight: 700, lineHeight: 1.5, letterSpacing: '0' },
68
+ body: { fontSize: '11px', fontWeight: 400, lineHeight: 1.5, letterSpacing: '0' },
69
+ small: { fontSize: '10px', fontWeight: 400, lineHeight: 1.4, letterSpacing: '0' },
70
+ caption: { fontSize: '9px', fontWeight: 400, lineHeight: 1.3, letterSpacing: '0' }
71
+ },
72
+ scale: {
73
+ base: 11,
74
+ ratio: 1.2,
75
+ sizes: [9, 10, 11, 12, 14, 16, 20, 24]
76
+ },
77
+ guidelines: [
78
+ 'Use Cantarell for GNOME applications',
79
+ 'Use Ubuntu font for Ubuntu-based apps',
80
+ 'Follow freedesktop.org font standards',
81
+ 'Support font scaling preferences',
82
+ 'Ensure readability at small sizes'
83
+ ]
84
+ };
85
+
86
+ // ============================================================================
87
+ // Linux Platform Layout System
88
+ // ============================================================================
89
+
90
+ const LINUX_LAYOUT: LayoutSystem = {
91
+ grid: {
92
+ columns: 12,
93
+ gutter: '12px',
94
+ margin: '12px',
95
+ breakpoints: {
96
+ compact: '0-639px',
97
+ medium: '640-1023px',
98
+ expanded: '1024px+'
99
+ }
100
+ },
101
+ spacing: {
102
+ unit: 6,
103
+ scale: [0, 6, 12, 18, 24, 30, 36, 48],
104
+ guidelines: [
105
+ 'Use 6px base unit (GNOME HIG)',
106
+ 'Follow GTK spacing conventions',
107
+ 'Maintain consistent padding',
108
+ 'Use headerbar for window controls'
109
+ ]
110
+ },
111
+ containerWidths: {
112
+ compact: '100%',
113
+ medium: '100%',
114
+ expanded: '100%'
115
+ },
116
+ guidelines: [
117
+ 'Use GTK/Qt widgets and patterns',
118
+ 'Implement headerbar with window controls',
119
+ 'Follow GNOME HIG or KDE HIG guidelines',
120
+ 'Support keyboard navigation',
121
+ 'Integrate with desktop environment',
122
+ 'Use native file choosers and dialogs'
123
+ ]
124
+ };
125
+
126
+ // ============================================================================
127
+ // Linux Platform Domain Export
128
+ // ============================================================================
129
+
130
+ export const LINUX_PLATFORM_DOMAIN: DomainStyle = {
131
+ domain: 'linux-platform',
132
+ characteristics: [
133
+ 'GTK or Qt widget toolkit integration',
134
+ 'Headerbar with integrated window controls',
135
+ 'Desktop environment theme integration',
136
+ 'D-Bus integration for system services',
137
+ 'XDG standards compliance',
138
+ 'Keyboard-first navigation',
139
+ 'Native file chooser dialogs',
140
+ 'System tray/notification area support',
141
+ 'Wayland and X11 compatibility',
142
+ 'Flatpak/Snap packaging support'
143
+ ],
144
+ colorScheme: LINUX_COLORS,
145
+ typography: LINUX_TYPOGRAPHY,
146
+ layout: LINUX_LAYOUT,
147
+ examples: [
148
+ 'GNOME application with headerbar',
149
+ 'KDE Plasma application with menu bar',
150
+ 'File manager with sidebar navigation',
151
+ 'Terminal emulator with tabs',
152
+ 'System settings application',
153
+ 'Text editor with syntax highlighting'
154
+ ]
155
+ };
156
+
@@ -1,157 +1,157 @@
1
- /**
2
- * Mobile Application Domain Module
3
- *
4
- * Mobile-specific design patterns for iOS and Android applications
5
- * following Human Interface Guidelines and Material Design for mobile.
6
- */
7
-
8
- import { DomainStyle, ColorPalette, TypographyRules, LayoutSystem } from '../../types';
9
-
10
- // ============================================================================
11
- // Mobile Application Color Palette
12
- // ============================================================================
13
-
14
- const MOBILE_COLORS: ColorPalette = {
15
- primary: {
16
- name: 'App Primary',
17
- hex: '#007AFF',
18
- rgb: { r: 0, g: 122, b: 255 },
19
- hsl: { h: 211, s: 100, l: 50 },
20
- variants: [
21
- { name: 'Primary Light', hex: '#5AC8FA', usage: 'Highlights' },
22
- { name: 'Primary Dark', hex: '#0051D5', usage: 'Pressed states' }
23
- ]
24
- },
25
- neutral: [
26
- { name: 'White', hex: '#FFFFFF', rgb: { r: 255, g: 255, b: 255 }, hsl: { h: 0, s: 0, l: 100 } },
27
- { name: 'Gray 1', hex: '#F2F2F7', rgb: { r: 242, g: 242, b: 247 }, hsl: { h: 240, s: 25, l: 96 } },
28
- { name: 'Gray 2', hex: '#E5E5EA', rgb: { r: 229, g: 229, b: 234 }, hsl: { h: 240, s: 11, l: 91 } },
29
- { name: 'Gray 5', hex: '#636366', rgb: { r: 99, g: 99, b: 102 }, hsl: { h: 240, s: 1, l: 39 } },
30
- { name: 'Black', hex: '#000000', rgb: { r: 0, g: 0, b: 0 }, hsl: { h: 0, s: 0, l: 0 } }
31
- ],
32
- semantic: {
33
- success: { hex: '#34C759', usage: 'Success states' },
34
- warning: { hex: '#FF9500', usage: 'Warnings' },
35
- error: { hex: '#FF3B30', usage: 'Errors, destructive' },
36
- info: { hex: '#007AFF', usage: 'Information' }
37
- },
38
- accessibility: {
39
- minimumContrast: 4.5,
40
- targetContrast: 7,
41
- colorBlindSafe: true,
42
- guidelines: [
43
- 'Support iOS Dynamic Type',
44
- 'Support Android Material You theming',
45
- 'Ensure 44x44pt touch targets (iOS)',
46
- 'Ensure 48x48dp touch targets (Android)',
47
- 'Test with accessibility scanners'
48
- ]
49
- }
50
- };
51
-
52
- // ============================================================================
53
- // Mobile Application Typography
54
- // ============================================================================
55
-
56
- const MOBILE_TYPOGRAPHY: TypographyRules = {
57
- fontFamilies: {
58
- primary: '-apple-system, BlinkMacSystemFont, "Roboto", "Helvetica Neue", sans-serif',
59
- secondary: 'system-ui, sans-serif',
60
- monospace: '"SF Mono", "Roboto Mono", monospace'
61
- },
62
- hierarchy: {
63
- h1: { fontSize: '34px', fontWeight: 700, lineHeight: 1.2, letterSpacing: '0' },
64
- h2: { fontSize: '28px', fontWeight: 700, lineHeight: 1.3, letterSpacing: '0' },
65
- h3: { fontSize: '22px', fontWeight: 600, lineHeight: 1.4, letterSpacing: '0' },
66
- h4: { fontSize: '20px', fontWeight: 600, lineHeight: 1.4, letterSpacing: '0' },
67
- h5: { fontSize: '17px', fontWeight: 600, lineHeight: 1.5, letterSpacing: '0' },
68
- h6: { fontSize: '15px', fontWeight: 600, lineHeight: 1.5, letterSpacing: '0' },
69
- body: { fontSize: '17px', fontWeight: 400, lineHeight: 1.5, letterSpacing: '0' },
70
- small: { fontSize: '15px', fontWeight: 400, lineHeight: 1.4, letterSpacing: '0' },
71
- caption: { fontSize: '13px', fontWeight: 400, lineHeight: 1.3, letterSpacing: '0' }
72
- },
73
- scale: {
74
- base: 17,
75
- ratio: 1.15,
76
- sizes: [11, 13, 15, 17, 20, 22, 28, 34]
77
- },
78
- guidelines: [
79
- 'Use San Francisco for iOS',
80
- 'Use Roboto for Android',
81
- 'Support Dynamic Type (iOS)',
82
- 'Support scalable text (Android)',
83
- 'Larger base size for mobile readability'
84
- ]
85
- };
86
-
87
- // ============================================================================
88
- // Mobile Application Layout System
89
- // ============================================================================
90
-
91
- const MOBILE_LAYOUT: LayoutSystem = {
92
- grid: {
93
- columns: 4,
94
- gutter: '16px',
95
- margin: '16px',
96
- breakpoints: {
97
- phone: '0-599px',
98
- tablet: '600-839px',
99
- large: '840px+'
100
- }
101
- },
102
- spacing: {
103
- unit: 8,
104
- scale: [0, 8, 16, 24, 32, 40, 48, 64],
105
- guidelines: [
106
- 'Use 8px base unit for spacing',
107
- 'Maintain 44x44pt touch targets (iOS)',
108
- 'Maintain 48x48dp touch targets (Android)',
109
- 'Use safe area insets for notched devices'
110
- ]
111
- },
112
- containerWidths: {
113
- phone: '100%',
114
- tablet: '100%',
115
- large: '100%'
116
- },
117
- guidelines: [
118
- 'Use native navigation patterns (tab bar, navigation bar)',
119
- 'Implement swipe gestures for navigation',
120
- 'Support portrait and landscape orientations',
121
- 'Use bottom navigation for primary actions',
122
- 'Implement pull-to-refresh for lists',
123
- 'Use modal sheets for secondary actions'
124
- ]
125
- };
126
-
127
- // ============================================================================
128
- // Mobile Application Domain Export
129
- // ============================================================================
130
-
131
- export const MOBILE_APPLICATION_DOMAIN: DomainStyle = {
132
- domain: 'mobile-application',
133
- characteristics: [
134
- 'Touch-first interaction design',
135
- 'Native navigation patterns (iOS/Android)',
136
- 'Gesture-based interactions',
137
- 'Bottom navigation and tab bars',
138
- 'Pull-to-refresh and infinite scroll',
139
- 'Modal sheets and action sheets',
140
- 'Safe area inset handling',
141
- 'Haptic feedback integration',
142
- 'Offline-first architecture',
143
- 'Push notification support'
144
- ],
145
- colorScheme: MOBILE_COLORS,
146
- typography: MOBILE_TYPOGRAPHY,
147
- layout: MOBILE_LAYOUT,
148
- examples: [
149
- 'Social media feed with infinite scroll',
150
- 'E-commerce app with product catalog',
151
- 'Messaging app with chat interface',
152
- 'Banking app with dashboard',
153
- 'Fitness tracker with charts',
154
- 'News reader with article cards'
155
- ]
156
- };
157
-
1
+ /**
2
+ * Mobile Application Domain Module
3
+ *
4
+ * Mobile-specific design patterns for iOS and Android applications
5
+ * following Human Interface Guidelines and Material Design for mobile.
6
+ */
7
+
8
+ import { DomainStyle, ColorPalette, TypographyRules, LayoutSystem } from '../../types';
9
+
10
+ // ============================================================================
11
+ // Mobile Application Color Palette
12
+ // ============================================================================
13
+
14
+ const MOBILE_COLORS: ColorPalette = {
15
+ primary: {
16
+ name: 'App Primary',
17
+ hex: '#007AFF',
18
+ rgb: { r: 0, g: 122, b: 255 },
19
+ hsl: { h: 211, s: 100, l: 50 },
20
+ variants: [
21
+ { name: 'Primary Light', hex: '#5AC8FA', usage: 'Highlights' },
22
+ { name: 'Primary Dark', hex: '#0051D5', usage: 'Pressed states' }
23
+ ]
24
+ },
25
+ neutral: [
26
+ { name: 'White', hex: '#FFFFFF', rgb: { r: 255, g: 255, b: 255 }, hsl: { h: 0, s: 0, l: 100 } },
27
+ { name: 'Gray 1', hex: '#F2F2F7', rgb: { r: 242, g: 242, b: 247 }, hsl: { h: 240, s: 25, l: 96 } },
28
+ { name: 'Gray 2', hex: '#E5E5EA', rgb: { r: 229, g: 229, b: 234 }, hsl: { h: 240, s: 11, l: 91 } },
29
+ { name: 'Gray 5', hex: '#636366', rgb: { r: 99, g: 99, b: 102 }, hsl: { h: 240, s: 1, l: 39 } },
30
+ { name: 'Black', hex: '#000000', rgb: { r: 0, g: 0, b: 0 }, hsl: { h: 0, s: 0, l: 0 } }
31
+ ],
32
+ semantic: {
33
+ success: { hex: '#34C759', usage: 'Success states' },
34
+ warning: { hex: '#FF9500', usage: 'Warnings' },
35
+ error: { hex: '#FF3B30', usage: 'Errors, destructive' },
36
+ info: { hex: '#007AFF', usage: 'Information' }
37
+ },
38
+ accessibility: {
39
+ minimumContrast: 4.5,
40
+ targetContrast: 7,
41
+ colorBlindSafe: true,
42
+ guidelines: [
43
+ 'Support iOS Dynamic Type',
44
+ 'Support Android Material You theming',
45
+ 'Ensure 44x44pt touch targets (iOS)',
46
+ 'Ensure 48x48dp touch targets (Android)',
47
+ 'Test with accessibility scanners'
48
+ ]
49
+ }
50
+ };
51
+
52
+ // ============================================================================
53
+ // Mobile Application Typography
54
+ // ============================================================================
55
+
56
+ const MOBILE_TYPOGRAPHY: TypographyRules = {
57
+ fontFamilies: {
58
+ primary: '-apple-system, BlinkMacSystemFont, "Roboto", "Helvetica Neue", sans-serif',
59
+ secondary: 'system-ui, sans-serif',
60
+ monospace: '"SF Mono", "Roboto Mono", monospace'
61
+ },
62
+ hierarchy: {
63
+ h1: { fontSize: '34px', fontWeight: 700, lineHeight: 1.2, letterSpacing: '0' },
64
+ h2: { fontSize: '28px', fontWeight: 700, lineHeight: 1.3, letterSpacing: '0' },
65
+ h3: { fontSize: '22px', fontWeight: 600, lineHeight: 1.4, letterSpacing: '0' },
66
+ h4: { fontSize: '20px', fontWeight: 600, lineHeight: 1.4, letterSpacing: '0' },
67
+ h5: { fontSize: '17px', fontWeight: 600, lineHeight: 1.5, letterSpacing: '0' },
68
+ h6: { fontSize: '15px', fontWeight: 600, lineHeight: 1.5, letterSpacing: '0' },
69
+ body: { fontSize: '17px', fontWeight: 400, lineHeight: 1.5, letterSpacing: '0' },
70
+ small: { fontSize: '15px', fontWeight: 400, lineHeight: 1.4, letterSpacing: '0' },
71
+ caption: { fontSize: '13px', fontWeight: 400, lineHeight: 1.3, letterSpacing: '0' }
72
+ },
73
+ scale: {
74
+ base: 17,
75
+ ratio: 1.15,
76
+ sizes: [11, 13, 15, 17, 20, 22, 28, 34]
77
+ },
78
+ guidelines: [
79
+ 'Use San Francisco for iOS',
80
+ 'Use Roboto for Android',
81
+ 'Support Dynamic Type (iOS)',
82
+ 'Support scalable text (Android)',
83
+ 'Larger base size for mobile readability'
84
+ ]
85
+ };
86
+
87
+ // ============================================================================
88
+ // Mobile Application Layout System
89
+ // ============================================================================
90
+
91
+ const MOBILE_LAYOUT: LayoutSystem = {
92
+ grid: {
93
+ columns: 4,
94
+ gutter: '16px',
95
+ margin: '16px',
96
+ breakpoints: {
97
+ phone: '0-599px',
98
+ tablet: '600-839px',
99
+ large: '840px+'
100
+ }
101
+ },
102
+ spacing: {
103
+ unit: 8,
104
+ scale: [0, 8, 16, 24, 32, 40, 48, 64],
105
+ guidelines: [
106
+ 'Use 8px base unit for spacing',
107
+ 'Maintain 44x44pt touch targets (iOS)',
108
+ 'Maintain 48x48dp touch targets (Android)',
109
+ 'Use safe area insets for notched devices'
110
+ ]
111
+ },
112
+ containerWidths: {
113
+ phone: '100%',
114
+ tablet: '100%',
115
+ large: '100%'
116
+ },
117
+ guidelines: [
118
+ 'Use native navigation patterns (tab bar, navigation bar)',
119
+ 'Implement swipe gestures for navigation',
120
+ 'Support portrait and landscape orientations',
121
+ 'Use bottom navigation for primary actions',
122
+ 'Implement pull-to-refresh for lists',
123
+ 'Use modal sheets for secondary actions'
124
+ ]
125
+ };
126
+
127
+ // ============================================================================
128
+ // Mobile Application Domain Export
129
+ // ============================================================================
130
+
131
+ export const MOBILE_APPLICATION_DOMAIN: DomainStyle = {
132
+ domain: 'mobile-application',
133
+ characteristics: [
134
+ 'Touch-first interaction design',
135
+ 'Native navigation patterns (iOS/Android)',
136
+ 'Gesture-based interactions',
137
+ 'Bottom navigation and tab bars',
138
+ 'Pull-to-refresh and infinite scroll',
139
+ 'Modal sheets and action sheets',
140
+ 'Safe area inset handling',
141
+ 'Haptic feedback integration',
142
+ 'Offline-first architecture',
143
+ 'Push notification support'
144
+ ],
145
+ colorScheme: MOBILE_COLORS,
146
+ typography: MOBILE_TYPOGRAPHY,
147
+ layout: MOBILE_LAYOUT,
148
+ examples: [
149
+ 'Social media feed with infinite scroll',
150
+ 'E-commerce app with product catalog',
151
+ 'Messaging app with chat interface',
152
+ 'Banking app with dashboard',
153
+ 'Fitness tracker with charts',
154
+ 'News reader with article cards'
155
+ ]
156
+ };
157
+