desktop-team-doc 0.1.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 (151) hide show
  1. package/README.md +89 -0
  2. package/content/docs/README.md +227 -0
  3. package/content/docs/index.md +352 -0
  4. package/content/docs/instructions/coding-conventions/.clang-format +65 -0
  5. package/content/docs/instructions/coding-conventions/cpp.md +132 -0
  6. package/content/docs/instructions/coding-conventions/frontend.md +612 -0
  7. package/content/docs/instructions/coding-conventions/team-wide.md +176 -0
  8. package/content/docs/instructions/workflows/assets/jira-1.png +0 -0
  9. package/content/docs/instructions/workflows/assets/jira-comment.png +0 -0
  10. package/content/docs/instructions/workflows/assets/jira-release-note.png +0 -0
  11. package/content/docs/instructions/workflows/assets/jira-tag.png +0 -0
  12. package/content/docs/instructions/workflows/code-review.md +451 -0
  13. package/content/docs/instructions/workflows/git-branch-convention.md +246 -0
  14. package/content/docs/instructions/workflows/git-commit.md +95 -0
  15. package/content/docs/instructions/workflows/jira-process.md +173 -0
  16. package/content/docs/instructions/workflows/jira-ticket-guide.md +105 -0
  17. package/content/docs/instructions/workflows/pull-request-generation.md +319 -0
  18. package/content/docs/instructions/workflows/scrum-process.md +104 -0
  19. package/content/docs/instructions/workflows/survey-project-setup.md +76 -0
  20. package/content/docs/knowledge/architecture/README.md +11 -0
  21. package/content/docs/knowledge/architecture/audio-plugin-architecture.md +213 -0
  22. package/content/docs/knowledge/architecture/cross-platform-design.md +176 -0
  23. package/content/docs/knowledge/architecture/frontend-native-bridge.md +193 -0
  24. package/content/docs/knowledge/architecture/native-command.md +189 -0
  25. package/content/docs/knowledge/architecture/state-management-architecture.md +105 -0
  26. package/content/docs/knowledge/component-library/ControlComponent/README.md +281 -0
  27. package/content/docs/knowledge/component-library/ControlComponent/accessibility/accessibility-implementation.md +503 -0
  28. package/content/docs/knowledge/component-library/ControlComponent/common-mechanisms.md +278 -0
  29. package/content/docs/knowledge/component-library/ControlComponent/core/error-handling.md +451 -0
  30. package/content/docs/knowledge/component-library/ControlComponent/core/native-interface.md +515 -0
  31. package/content/docs/knowledge/component-library/ControlComponent/core/state-management.md +509 -0
  32. package/content/docs/knowledge/component-library/ControlComponent/creating-new-controls.md +654 -0
  33. package/content/docs/knowledge/component-library/ControlComponent/design/api-design-reference.md +1142 -0
  34. package/content/docs/knowledge/component-library/ControlComponent/design/design-principles.md +336 -0
  35. package/content/docs/knowledge/component-library/ControlComponent/design/styling-architecture.md +595 -0
  36. package/content/docs/knowledge/component-library/ControlComponent/design/visual-feedback.md +456 -0
  37. package/content/docs/knowledge/component-library/ControlComponent/development-environment.md +213 -0
  38. package/content/docs/knowledge/component-library/ControlComponent/interaction/gesture-algorithms.md +705 -0
  39. package/content/docs/knowledge/component-library/ControlComponent/interaction/touch-support.md +525 -0
  40. package/content/docs/knowledge/component-library/ControlComponent/interaction/value-processing-patterns.md +801 -0
  41. package/content/docs/knowledge/component-library/ControlComponent/interaction/velocity-damping-systems.md +741 -0
  42. package/content/docs/knowledge/component-library/ControlComponent/knob/architecture.md +490 -0
  43. package/content/docs/knowledge/component-library/ControlComponent/knob/how-to-use.md +304 -0
  44. package/content/docs/knowledge/component-library/ControlComponent/knob/index.md +105 -0
  45. package/content/docs/knowledge/component-library/ControlComponent/optimization/performance-benchmarks.md +535 -0
  46. package/content/docs/knowledge/component-library/ControlComponent/optimization/performance-optimization.md +1092 -0
  47. package/content/docs/knowledge/component-library/ControlComponent/quick-start.md +345 -0
  48. package/content/docs/knowledge/component-library/ControlComponent/slider/architecture.md +444 -0
  49. package/content/docs/knowledge/component-library/ControlComponent/slider/how-to-use.md +470 -0
  50. package/content/docs/knowledge/component-library/ControlComponent/slider/index.md +107 -0
  51. package/content/docs/knowledge/component-library/ControlComponent/testing-guide.md +950 -0
  52. package/content/docs/knowledge/component-library/ControlComponent/troubleshooting.md +657 -0
  53. package/content/docs/knowledge/component-library/frontend-develop/LICENSE.txt +176 -0
  54. package/content/docs/knowledge/component-library/frontend-develop/SKILL.md +124 -0
  55. package/content/docs/knowledge/component-library/frontend-develop/references/code-organization.md +620 -0
  56. package/content/docs/knowledge/component-library/frontend-develop/references/coding-standards.md +275 -0
  57. package/content/docs/knowledge/component-library/frontend-develop/references/component-reusability.md +559 -0
  58. package/content/docs/knowledge/component-library/frontend-develop/references/examples.md +554 -0
  59. package/content/docs/knowledge/component-library/frontend-develop/references/layout-separation.md +638 -0
  60. package/content/docs/knowledge/component-library/frontend-develop/references/performance-optimization.md +678 -0
  61. package/content/docs/knowledge/component-library/frontend-develop/references/state-management.md +331 -0
  62. package/content/docs/knowledge/component-library/frontend-develop/references/styling-guidelines.md +349 -0
  63. package/content/docs/knowledge/component-library/frontend-develop/references/type-safety.md +493 -0
  64. package/content/docs/knowledge/development/assets/cyberduck-aws-credentials.png +0 -0
  65. package/content/docs/knowledge/development/assets/postman-environment-setup.png +0 -0
  66. package/content/docs/knowledge/development/aws-storage.md +95 -0
  67. package/content/docs/knowledge/development/crm-system.md +22 -0
  68. package/content/docs/knowledge/development/glossary.md +246 -0
  69. package/content/docs/knowledge/development/pg-api-guide.md +71 -0
  70. package/content/docs/knowledge/development/staging-license-management.md +44 -0
  71. package/content/docs/knowledge/development/tech-stack.md +240 -0
  72. package/content/docs/knowledge/domain/popup-system.md +106 -0
  73. package/content/docs/knowledge/domain/sigpath.md +264 -0
  74. package/content/docs/knowledge/environment-setup/aax-signing-update.md +149 -0
  75. package/content/docs/knowledge/environment-setup/assets/aax-1.png +0 -0
  76. package/content/docs/knowledge/environment-setup/assets/aax-2.png +0 -0
  77. package/content/docs/knowledge/environment-setup/assets/aax-3.png +0 -0
  78. package/content/docs/knowledge/environment-setup/assets/aax-4.png +0 -0
  79. package/content/docs/knowledge/environment-setup/assets/aax-5.png +0 -0
  80. package/content/docs/knowledge/environment-setup/assets/aax-6.png +0 -0
  81. package/content/docs/knowledge/environment-setup/assets/aax-7.png +0 -0
  82. package/content/docs/knowledge/environment-setup/assets/buildmachine-1.png +0 -0
  83. package/content/docs/knowledge/environment-setup/assets/buildmachine-10.png +0 -0
  84. package/content/docs/knowledge/environment-setup/assets/buildmachine-11.png +0 -0
  85. package/content/docs/knowledge/environment-setup/assets/buildmachine-12.png +0 -0
  86. package/content/docs/knowledge/environment-setup/assets/buildmachine-13.png +0 -0
  87. package/content/docs/knowledge/environment-setup/assets/buildmachine-14.png +0 -0
  88. package/content/docs/knowledge/environment-setup/assets/buildmachine-2.png +0 -0
  89. package/content/docs/knowledge/environment-setup/assets/buildmachine-3.png +0 -0
  90. package/content/docs/knowledge/environment-setup/assets/buildmachine-4.png +0 -0
  91. package/content/docs/knowledge/environment-setup/assets/buildmachine-5.png +0 -0
  92. package/content/docs/knowledge/environment-setup/assets/buildmachine-6.png +0 -0
  93. package/content/docs/knowledge/environment-setup/assets/buildmachine-7.png +0 -0
  94. package/content/docs/knowledge/environment-setup/assets/buildmachine-8.png +0 -0
  95. package/content/docs/knowledge/environment-setup/assets/buildmachine-9.png +0 -0
  96. package/content/docs/knowledge/environment-setup/build-machine-setup.md +224 -0
  97. package/content/docs/knowledge/environment-setup/build-machine-troubleshooting.md +193 -0
  98. package/content/docs/knowledge/implementation-guides/adding-amp.md +190 -0
  99. package/content/docs/knowledge/implementation-guides/adding-fx.md +111 -0
  100. package/content/docs/knowledge/implementation-guides/cab-integration.md +194 -0
  101. package/content/docs/knowledge/implementation-guides/custom-pedal-integration.md +309 -0
  102. package/content/docs/knowledge/projects/BIAS_ONE_GUI/README.md +17 -0
  103. package/content/manifest.json +122 -0
  104. package/content/rules/cpp.mdc +135 -0
  105. package/content/rules/frontend.mdc +615 -0
  106. package/content/rules/index.mdc +256 -0
  107. package/content/rules/knowledge.mdc +46 -0
  108. package/content/rules/team-wide.mdc +179 -0
  109. package/content/rules/workflows.mdc +43 -0
  110. package/content/tools/agents/context-compressor.md +357 -0
  111. package/content/tools/agents/context-writer.md +328 -0
  112. package/content/tools/agents/release-notes-generator.md +389 -0
  113. package/content/tools/agents/srs-writer-agent.md +63 -0
  114. package/content/tools/mcp/README.md +25 -0
  115. package/content/tools/mcp/mcp-desktop-team.example.json +13 -0
  116. package/content/tools/skills/frontend-develop/LICENSE.txt +176 -0
  117. package/content/tools/skills/frontend-develop/SKILL.md +124 -0
  118. package/content/tools/skills/frontend-develop/references/code-organization.md +620 -0
  119. package/content/tools/skills/frontend-develop/references/coding-standards.md +275 -0
  120. package/content/tools/skills/frontend-develop/references/component-reusability.md +559 -0
  121. package/content/tools/skills/frontend-develop/references/examples.md +554 -0
  122. package/content/tools/skills/frontend-develop/references/layout-separation.md +638 -0
  123. package/content/tools/skills/frontend-develop/references/performance-optimization.md +678 -0
  124. package/content/tools/skills/frontend-develop/references/state-management.md +331 -0
  125. package/content/tools/skills/frontend-develop/references/styling-guidelines.md +349 -0
  126. package/content/tools/skills/frontend-develop/references/type-safety.md +493 -0
  127. package/content/tools/slash-commands/commit.md +17 -0
  128. package/content/tools/slash-commands/context-compress.md +149 -0
  129. package/content/tools/slash-commands/context-write.md +92 -0
  130. package/content/tools/slash-commands/jira.md +12 -0
  131. package/content/tools/slash-commands/pr-gen.md +12 -0
  132. package/content/tools/slash-commands/pr-review.md +12 -0
  133. package/dist/commands/detect.d.ts +1 -0
  134. package/dist/commands/detect.js +33 -0
  135. package/dist/commands/install.d.ts +1 -0
  136. package/dist/commands/install.js +100 -0
  137. package/dist/commands/uninstall.d.ts +1 -0
  138. package/dist/commands/uninstall.js +132 -0
  139. package/dist/index.d.ts +2 -0
  140. package/dist/index.js +53 -0
  141. package/dist/lib/detect-env.d.ts +3 -0
  142. package/dist/lib/detect-env.js +52 -0
  143. package/dist/lib/prompt-env.d.ts +3 -0
  144. package/dist/lib/prompt-env.js +16 -0
  145. package/dist/lib/resolve-doc-repo.d.ts +14 -0
  146. package/dist/lib/resolve-doc-repo.js +61 -0
  147. package/dist/lib/symlink.d.ts +7 -0
  148. package/dist/lib/symlink.js +60 -0
  149. package/dist/lib/sync-from-manifest.d.ts +8 -0
  150. package/dist/lib/sync-from-manifest.js +64 -0
  151. package/package.json +46 -0
@@ -0,0 +1,275 @@
1
+ # Coding Standards Reference
2
+
3
+ This document provides a quick reference for coding standards including formatting rules, naming conventions, and code style. For complete details, refer to the project's full coding standards.
4
+
5
+ ## Formatting Rules
6
+
7
+ ### Prettier Configuration
8
+
9
+ **Key Rules**:
10
+ - **Indentation**: 2 spaces (not tabs)
11
+ - **Line Length**: Maximum 120 characters
12
+ - **Semicolons**: Always use semicolons
13
+ - **Quotes**: Single quotes for strings
14
+ - **Trailing Commas**: As per Prettier defaults
15
+ - **No trailing whitespace**
16
+ - **No indentation on empty lines**
17
+
18
+ **Note**: Run `npm run eslint` before committing to ensure code quality.
19
+
20
+ ### ESLint Rules
21
+
22
+ Follow ESLint rules in `.eslintrc.json`. Common rules:
23
+ - No unused variables
24
+ - No console.log in production code
25
+ - Prefer const over let
26
+ - Prefer arrow functions for callbacks
27
+
28
+ ## Naming Conventions
29
+
30
+ ### Files and Directories
31
+
32
+ | Type | Convention | Example |
33
+ |------|-----------|---------|
34
+ | React Components | `PascalCase.tsx` | `AppButton.tsx`, `EditableText.tsx` |
35
+ | Hooks | `camelCase.ts` (starts with "use") | `useInputStatus.ts`, `useGearMenuStore.ts` |
36
+ | Utilities | `camelCase.ts` | `constants.ts`, `utils.ts` |
37
+ | Stores | `camelCase.ts` (ends with "Store") | `guitarMatchStore.ts`, `pedalGridStore.ts` |
38
+ | Types/Interfaces | `types.ts` or `interfaces.ts` | `types.ts` |
39
+ | Command Files | `camelCase.ts` (ends with "Cmd") | `initMainViewCmd.ts` |
40
+
41
+ ### TypeScript/JavaScript
42
+
43
+ | Element | Convention | Example |
44
+ |---------|-----------|---------|
45
+ | Variables | `camelCase` | `userName`, `isLoading` |
46
+ | Functions | `camelCase` | `handleClick`, `fetchData` |
47
+ | React Components | `PascalCase` | `AppButton`, `EditableText` |
48
+ | Interfaces/Types | `PascalCase` | `AppButtonProps`, `EditableTextHandle` |
49
+ | Type Aliases | `PascalCase` (prefix `T`) | `TKnobProps` |
50
+ | Constants | `UPPER_SNAKE_CASE` | `MAX_BUFFER_SIZE`, `DEFAULT_FRAMES` |
51
+ | Enums | `PascalCase` (values `camelCase`) | `enum Status { active, inactive }` |
52
+ | Props Types | Component + `Props` | `AppButtonProps` |
53
+ | Handler Types | Component + `Handle` | `EditableTextHandle` |
54
+
55
+ ### CSS Classes (TailwindCSS)
56
+
57
+ - **Design System**: `.x-` prefix (e.g., `.x-btn`, `.x-red-dot`)
58
+ - **Utilities**: `.pg-` prefix (e.g., `.pg-scroll-bar`)
59
+ - **Typography**: Semantic naming (e.g., `.heading-14`, `.body-16`, `.x-heading-4`)
60
+
61
+ ## Code Style Conventions
62
+
63
+ ### Braces (Always Use)
64
+
65
+ **Rule**: Always use braces for functions and control statements.
66
+
67
+ **Bad**:
68
+ ```typescript
69
+ if (isOpen) closeModal();
70
+ else if (isSaveDialogShowed) setIsSaveDialogShowed(false);
71
+ ```
72
+
73
+ **Good**:
74
+ ```typescript
75
+ if (isOpen) {
76
+ closeModal();
77
+ } else if (isSaveDialogShowed) {
78
+ setIsSaveDialogShowed(false);
79
+ }
80
+ ```
81
+
82
+ **Exception**: Early returns/guards on one line:
83
+ ```typescript
84
+ if (!inputData) return;
85
+ processData1(inputData.data1);
86
+ processData2(inputData.data2);
87
+ ```
88
+
89
+ ### API Client Standards
90
+
91
+ - **Use Axios**: Standardize on `axios` for all API calls
92
+ - **Exception**: `XMLHttpRequest` is used for native command communication only
93
+
94
+ **Example**:
95
+ ```typescript
96
+ import axios from 'axios';
97
+
98
+ const fetchUserData = async (userId: string) => {
99
+ try {
100
+ const response = await axios.get(`/api/users/${userId}`);
101
+ return response.data;
102
+ } catch (error) {
103
+ console.error('Failed to fetch user data:', error);
104
+ throw error;
105
+ }
106
+ };
107
+ ```
108
+
109
+ ## TypeScript Standards
110
+
111
+ ### Type Safety
112
+
113
+ - **Strict Mode**: Enable `noImplicitAny: true`
114
+ - **Avoid `any`**: Use specific types or `unknown` when type is truly unknown
115
+ - **Type Imports**: Use `type` keyword for type-only imports
116
+
117
+ ```typescript
118
+ import type { MousePos } from '@/src/utils/mouseRx/types';
119
+ ```
120
+
121
+ ### Interface vs Type
122
+
123
+ - **Interfaces**: For object shapes, especially props and public APIs
124
+ - **Type Aliases**: For unions, intersections, and complex types
125
+
126
+ ### Function Return Types
127
+
128
+ Always explicitly define return types:
129
+
130
+ ```typescript
131
+ const processData = (): string => {
132
+ return 'result';
133
+ };
134
+ ```
135
+
136
+ ## React Patterns
137
+
138
+ ### Component Structure Order
139
+
140
+ 1. **Imports** (external → internal → types → styles)
141
+ 2. **Type Definitions** (Props interfaces, handler types)
142
+ 3. **Component Declaration** (arrow functions or `forwardRef`)
143
+ 4. **Hooks** (`useState`, `useRef`, `useEffect`)
144
+ 5. **Handlers** (Event handlers, callbacks)
145
+ 6. **Render Helpers** (Small render functions)
146
+ 7. **Return Statement** (JSX)
147
+
148
+ ### Props Destructuring
149
+
150
+ Destructure props in function parameters:
151
+
152
+ ```typescript
153
+ const Component = ({ value, onChange }: EditableTextProps) => {
154
+ // Component logic
155
+ };
156
+ ```
157
+
158
+ ### Props Spreading (Use Sparingly)
159
+
160
+ **Avoid indiscriminate props spreading**:
161
+
162
+ **Bad**:
163
+ ```typescript
164
+ function Comp({ dataA, ...props }) {
165
+ return <div {...props} />;
166
+ }
167
+ ```
168
+
169
+ **Good**:
170
+ ```typescript
171
+ function Comp({ dataA, onClick, onMouseMove, role }) {
172
+ return <div onClick={onClick} onMouseMove={onMouseMove} role={role} />;
173
+ }
174
+ ```
175
+
176
+ ## Import Organization
177
+
178
+ ### Import Order
179
+
180
+ 1. External libraries (React, third-party)
181
+ 2. Internal modules (aliased with `@/`)
182
+ 3. Types (using `import type`)
183
+ 4. Relative imports
184
+ 5. Styles (if any)
185
+
186
+ **Example**:
187
+ ```typescript
188
+ import React, { useState, useEffect } from 'react';
189
+ import { twMerge } from 'tailwind-merge';
190
+ import clsx from 'clsx';
191
+
192
+ import ClickOutsideHandler from '@/src/components/dumbs/click-outside-handler';
193
+ import { useParameterComponentProps } from '@/src/components/shared/store';
194
+
195
+ import type { MousePos } from '@/src/utils/mouseRx/types';
196
+ import type { AppButtonProps } from './types';
197
+
198
+ import './styles.css';
199
+ ```
200
+
201
+ ### Path Aliases
202
+
203
+ - **Configure `@/` to point to project root**
204
+ - **Use `@/src/` for source imports**
205
+ - **Avoid `@src/` pattern** (looks like npm org package)
206
+
207
+ **tsconfig.json configuration**:
208
+ ```json
209
+ {
210
+ "compilerOptions": {
211
+ "paths": {
212
+ "@/*": ["./*"]
213
+ }
214
+ }
215
+ }
216
+ ```
217
+
218
+ ## Event Handlers
219
+
220
+ ### Naming
221
+
222
+ - Prefix with `handle` for event handlers: `handleClick`, `handleChange`, `handleSubmit`
223
+ - Prefix with `on` for prop callbacks: `onClick`, `onChange`, `onSubmit`
224
+
225
+ ### Async Handlers
226
+
227
+ ```typescript
228
+ const handleSubmit = async () => {
229
+ try {
230
+ await submitData();
231
+ } catch (error) {
232
+ console.error('Submit failed:', error);
233
+ }
234
+ };
235
+ ```
236
+
237
+ ## Error Handling
238
+
239
+ - Use try-catch for async operations
240
+ - Log errors appropriately
241
+ - Show user-friendly error messages
242
+ - Handle edge cases gracefully
243
+
244
+ ## Commenting Policy
245
+
246
+ See [Team-wide Coding Conventions](../team-wide.md#commenting-policy) for the team's minimalist commenting policy.
247
+
248
+ ### Frontend-Specific Guidelines
249
+
250
+ - **Complex State Logic**: Comment non-obvious state management patterns
251
+ - **Workarounds**: Document workarounds with explanation
252
+ - **Type Assertions**: Explain why type assertion is necessary if non-obvious
253
+ - **Magic Numbers**: Use named constants instead of comments
254
+
255
+ ## Quick Reference Checklist
256
+
257
+ When writing code, ensure:
258
+
259
+ - [ ] 2-space indentation, single quotes
260
+ - [ ] Explicit return types on functions
261
+ - [ ] Always use braces for functions and control statements
262
+ - [ ] Props destructured in parameters
263
+ - [ ] `import type` for type-only imports
264
+ - [ ] Path aliases use `@/src/` pattern
265
+ - [ ] TailwindCSS for styling (primary)
266
+ - [ ] Event handlers prefixed with `handle`
267
+ - [ ] Axios for API calls
268
+ - [ ] No indiscriminate props spreading
269
+ - [ ] Semantic HTML and accessibility
270
+
271
+ ## References
272
+
273
+ For complete details, see:
274
+ - **Full Coding Standards**: `desktop-team-documentation/instructions/coding-conventions/frontend.md`
275
+ - **Team-wide Standards**: `desktop-team-documentation/instructions/coding-conventions/team-wide.md`