mcp-probe-kit 3.0.14 → 3.0.16

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 (43) hide show
  1. package/README.md +17 -11
  2. package/build/lib/__tests__/gitnexus-bridge.unit.test.js +9 -1
  3. package/build/lib/gitnexus-bridge.d.ts +1 -0
  4. package/build/lib/gitnexus-bridge.js +29 -1
  5. package/build/lib/skill-bridge.d.ts +31 -0
  6. package/build/lib/skill-bridge.js +100 -0
  7. package/build/resources/ui-ux-data/charts.json +302 -0
  8. package/build/resources/ui-ux-data/colors.json +1058 -0
  9. package/build/resources/ui-ux-data/icons.json +1102 -0
  10. package/build/resources/ui-ux-data/landing.json +262 -0
  11. package/build/resources/ui-ux-data/metadata.json +6 -0
  12. package/build/resources/ui-ux-data/products.json +1058 -0
  13. package/build/resources/ui-ux-data/react-performance.json +574 -0
  14. package/build/resources/ui-ux-data/stacks/astro.json +266 -0
  15. package/build/resources/ui-ux-data/stacks/flutter.json +626 -0
  16. package/build/resources/ui-ux-data/stacks/html-tailwind.json +662 -0
  17. package/build/resources/ui-ux-data/stacks/jetpack-compose.json +626 -0
  18. package/build/resources/ui-ux-data/stacks/nextjs.json +218 -0
  19. package/build/resources/ui-ux-data/stacks/nuxt-ui.json +14 -0
  20. package/build/resources/ui-ux-data/stacks/nuxtjs.json +182 -0
  21. package/build/resources/ui-ux-data/stacks/react-native.json +350 -0
  22. package/build/resources/ui-ux-data/stacks/react.json +530 -0
  23. package/build/resources/ui-ux-data/stacks/shadcn.json +566 -0
  24. package/build/resources/ui-ux-data/stacks/svelte.json +134 -0
  25. package/build/resources/ui-ux-data/stacks/swiftui.json +26 -0
  26. package/build/resources/ui-ux-data/stacks/vue.json +170 -0
  27. package/build/resources/ui-ux-data/styles.json +1610 -0
  28. package/build/resources/ui-ux-data/typography.json +743 -0
  29. package/build/resources/ui-ux-data/ui-reasoning.json +1431 -0
  30. package/build/resources/ui-ux-data/ux-guidelines.json +1190 -0
  31. package/build/resources/ui-ux-data/web-interface.json +389 -0
  32. package/build/schemas/ui-ux-schemas.js +1 -1
  33. package/build/tools/start_product.js +8 -1
  34. package/build/tools/start_ui.js +14 -3
  35. package/build/tools/ui-ux-tools.js +21 -17
  36. package/build/utils/ui-data-loader.d.ts +18 -2
  37. package/build/utils/ui-data-loader.js +74 -12
  38. package/docs/i18n/en.json +4 -2
  39. package/docs/i18n/ja.json +4 -2
  40. package/docs/i18n/ko.json +4 -2
  41. package/docs/i18n/zh-CN.json +4 -2
  42. package/docs/pages/getting-started.html +3 -0
  43. package/package.json +2 -1
@@ -0,0 +1,134 @@
1
+ [
2
+ {
3
+ "No": "1",
4
+ "Category": "Reactivity",
5
+ "Guideline": "Use $: for reactive statements",
6
+ "Description": "Automatic dependency tracking",
7
+ "Do": "$: for derived values",
8
+ "Don't": "Manual recalculation",
9
+ "Code Good": "$: doubled = count * 2",
10
+ "Code Bad": "let doubled; count && (doubled = count * 2)",
11
+ "Severity": "Medium",
12
+ "Docs URL": "https://svelte.dev/docs/svelte-components#script-3-$-marks-a-statement-as-reactive"
13
+ },
14
+ {
15
+ "No": "2",
16
+ "Category": "Reactivity",
17
+ "Guideline": "Trigger reactivity with assignment",
18
+ "Description": "Svelte tracks assignments not mutations",
19
+ "Do": "Reassign arrays/objects to trigger update",
20
+ "Don't": "Mutate without reassignment",
21
+ "Code Good": "items = [...items, newItem]",
22
+ "Code Bad": "items.push(newItem)",
23
+ "Severity": "High",
24
+ "Docs URL": "https://svelte.dev/docs/svelte-components#script-2-assignments-are-reactive"
25
+ },
26
+ {
27
+ "No": "3",
28
+ "Category": "Reactivity",
29
+ "Guideline": "Use $state in Svelte 5",
30
+ "Description": "Runes for explicit reactivity",
31
+ "Do": "let count = $state(0)",
32
+ "Don't": "Implicit reactivity in Svelte 5",
33
+ "Code Good": "let count = $state(0)",
34
+ "Code Bad": "let count = 0 (Svelte 5)",
35
+ "Severity": "Medium",
36
+ "Docs URL": "https://svelte.dev/blog/runes"
37
+ },
38
+ {
39
+ "No": "4",
40
+ "Category": "Reactivity",
41
+ "Guideline": "Use $derived for computed values",
42
+ "Description": "$derived replaces $: in Svelte 5",
43
+ "Do": "let doubled = $derived(count * 2)",
44
+ "Don't": "$: in Svelte 5",
45
+ "Code Good": "let doubled = $derived(count * 2)",
46
+ "Code Bad": "$: doubled = count * 2 (Svelte 5)",
47
+ "Severity": "Medium",
48
+ "Docs URL": ""
49
+ },
50
+ {
51
+ "No": "5",
52
+ "Category": "Reactivity",
53
+ "Guideline": "Use $effect for side effects",
54
+ "Description": "$effect replaces $: side effects",
55
+ "Do": "Use $effect for subscriptions",
56
+ "Don't": "$: for side effects in Svelte 5",
57
+ "Code Good": "$effect(() => console.log(count))",
58
+ "Code Bad": "$: console.log(count) (Svelte 5)",
59
+ "Severity": "Medium",
60
+ "Docs URL": ""
61
+ },
62
+ {
63
+ "No": "6",
64
+ "Category": "Props",
65
+ "Guideline": "Export let for props",
66
+ "Description": "Declare props with export let",
67
+ "Do": "export let propName",
68
+ "Don't": "Props without export",
69
+ "Code Good": "export let count = 0",
70
+ "Code Bad": "let count = 0",
71
+ "Severity": "High",
72
+ "Docs URL": "https://svelte.dev/docs/svelte-components#script-1-export-creates-a-component-prop"
73
+ },
74
+ {
75
+ "No": "7",
76
+ "Category": "Props",
77
+ "Guideline": "Use $props in Svelte 5",
78
+ "Description": "$props rune for prop access",
79
+ "Do": "let { name } = $props()",
80
+ "Don't": "export let in Svelte 5",
81
+ "Code Good": "let { name, age = 0 } = $props()",
82
+ "Code Bad": "export let name; export let age = 0",
83
+ "Severity": "Medium",
84
+ "Docs URL": ""
85
+ },
86
+ {
87
+ "No": "8",
88
+ "Category": "Props",
89
+ "Guideline": "Provide default values",
90
+ "Description": "Default props with assignment",
91
+ "Do": "export let count = 0",
92
+ "Don't": "Required props without defaults",
93
+ "Code Good": "export let count = 0",
94
+ "Code Bad": "export let count",
95
+ "Severity": "Low",
96
+ "Docs URL": ""
97
+ },
98
+ {
99
+ "No": "9",
100
+ "Category": "Props",
101
+ "Guideline": "Use spread props",
102
+ "Description": "Pass through unknown props",
103
+ "Do": "{...$$restProps} on elements",
104
+ "Don't": "Manual prop forwarding",
105
+ "Code Good": "<button {...$$restProps}>",
106
+ "Code Bad": "<button class={$$props.class}>",
107
+ "Severity": "Low",
108
+ "Docs URL": "https://svelte.dev/docs/basic-markup#attributes-and-props"
109
+ },
110
+ {
111
+ "No": "10",
112
+ "Category": "Bindings",
113
+ "Guideline": "Use bind: for two-way binding",
114
+ "Description": "Simplified input handling",
115
+ "Do": "bind:value for inputs",
116
+ "Don't": "on:input with manual update",
117
+ "Code Good": "<input bind:value={name}>",
118
+ "Code Bad": "<input value={name} on:input={e => name = e.target.value}>",
119
+ "Severity": "Low",
120
+ "Docs URL": "https://svelte.dev/docs/element-directives#bind-property"
121
+ },
122
+ {
123
+ "No": "11",
124
+ "Category": "Bindings",
125
+ "Guideline": "Bind to DOM elements",
126
+ "Description": "Reference DOM nodes",
127
+ "Do": "bind:this for element reference",
128
+ "Don't": "querySelector in onMount",
129
+ "Code Good": "<div bind:this={el}>",
130
+ "Code Bad": "onMount(() => el = document.querySelector())",
131
+ "Severity": "Medium",
132
+ "Docs URL": ""
133
+ }
134
+ ]
@@ -0,0 +1,26 @@
1
+ [
2
+ {
3
+ "No": "1",
4
+ "Category": "Views",
5
+ "Guideline": "Use struct for views",
6
+ "Description": "SwiftUI views are value types",
7
+ "Do": "struct MyView: View",
8
+ "Don't": "class MyView: View",
9
+ "Code Good": "struct ContentView: View { var body: some View }",
10
+ "Code Bad": "class ContentView: View",
11
+ "Severity": "High",
12
+ "Docs URL": "https://developer.apple.com/documentation/swiftui/view"
13
+ },
14
+ {
15
+ "No": "2",
16
+ "Category": "Views",
17
+ "Guideline": "Keep views small and focused",
18
+ "Description": "Single responsibility for each view",
19
+ "Do": "Extract subviews for complex layouts",
20
+ "Don't": "Large monolithic views",
21
+ "Code Good": "Extract HeaderView FooterView",
22
+ "Code Bad": "500+ line View struct",
23
+ "Severity": "Medium",
24
+ "Docs URL": ""
25
+ }
26
+ ]
@@ -0,0 +1,170 @@
1
+ [
2
+ {
3
+ "No": "1",
4
+ "Category": "Composition",
5
+ "Guideline": "Use Composition API for new projects",
6
+ "Description": "Composition API offers better TypeScript support and logic reuse",
7
+ "Do": "<script setup> for components",
8
+ "Don't": "Options API for new projects",
9
+ "Code Good": "<script setup>",
10
+ "Code Bad": "export default { data() }",
11
+ "Severity": "Medium",
12
+ "Docs URL": "https://vuejs.org/guide/extras/composition-api-faq.html"
13
+ },
14
+ {
15
+ "No": "2",
16
+ "Category": "Composition",
17
+ "Guideline": "Use script setup syntax",
18
+ "Description": "Cleaner syntax with automatic exports",
19
+ "Do": "<script setup> with defineProps",
20
+ "Don't": "setup() function manually",
21
+ "Code Good": "<script setup>",
22
+ "Code Bad": "<script> setup() { return {} }",
23
+ "Severity": "Low",
24
+ "Docs URL": "https://vuejs.org/api/sfc-script-setup.html"
25
+ },
26
+ {
27
+ "No": "3",
28
+ "Category": "Reactivity",
29
+ "Guideline": "Use ref for primitives",
30
+ "Description": "ref() for primitive values that need reactivity",
31
+ "Do": "ref() for strings numbers booleans",
32
+ "Don't": "reactive() for primitives",
33
+ "Code Good": "const count = ref(0)",
34
+ "Code Bad": "const count = reactive(0)",
35
+ "Severity": "Medium",
36
+ "Docs URL": "https://vuejs.org/guide/essentials/reactivity-fundamentals.html"
37
+ },
38
+ {
39
+ "No": "4",
40
+ "Category": "Reactivity",
41
+ "Guideline": "Use reactive for objects",
42
+ "Description": "reactive() for complex objects and arrays",
43
+ "Do": "reactive() for objects with multiple properties",
44
+ "Don't": "ref() for complex objects",
45
+ "Code Good": "const state = reactive({ user: null })",
46
+ "Code Bad": "const state = ref({ user: null })",
47
+ "Severity": "Medium",
48
+ "Docs URL": ""
49
+ },
50
+ {
51
+ "No": "5",
52
+ "Category": "Reactivity",
53
+ "Guideline": "Access ref values with .value",
54
+ "Description": "Remember .value in script unwrap in template",
55
+ "Do": "Use .value in script",
56
+ "Don't": "Forget .value in script",
57
+ "Code Good": "count.value++",
58
+ "Code Bad": "count++ (in script)",
59
+ "Severity": "High",
60
+ "Docs URL": ""
61
+ },
62
+ {
63
+ "No": "6",
64
+ "Category": "Reactivity",
65
+ "Guideline": "Use computed for derived state",
66
+ "Description": "Computed properties cache and update automatically",
67
+ "Do": "computed() for derived values",
68
+ "Don't": "Methods for derived values",
69
+ "Code Good": "const doubled = computed(() => count.value * 2)",
70
+ "Code Bad": "const doubled = () => count.value * 2",
71
+ "Severity": "Medium",
72
+ "Docs URL": "https://vuejs.org/guide/essentials/computed.html"
73
+ },
74
+ {
75
+ "No": "7",
76
+ "Category": "Reactivity",
77
+ "Guideline": "Use shallowRef for large objects",
78
+ "Description": "Avoid deep reactivity for performance",
79
+ "Do": "shallowRef for large data structures",
80
+ "Don't": "ref for large nested objects",
81
+ "Code Good": "const bigData = shallowRef(largeObject)",
82
+ "Code Bad": "const bigData = ref(largeObject)",
83
+ "Severity": "Medium",
84
+ "Docs URL": "https://vuejs.org/api/reactivity-advanced.html#shallowref"
85
+ },
86
+ {
87
+ "No": "8",
88
+ "Category": "Watchers",
89
+ "Guideline": "Use watchEffect for simple cases",
90
+ "Description": "Auto-tracks dependencies",
91
+ "Do": "watchEffect for simple reactive effects",
92
+ "Don't": "watch with explicit deps when not needed",
93
+ "Code Good": "watchEffect(() => console.log(count.value))",
94
+ "Code Bad": "watch(count, (val) => console.log(val))",
95
+ "Severity": "Low",
96
+ "Docs URL": "https://vuejs.org/guide/essentials/watchers.html"
97
+ },
98
+ {
99
+ "No": "9",
100
+ "Category": "Watchers",
101
+ "Guideline": "Use watch for specific sources",
102
+ "Description": "Explicit control over what to watch",
103
+ "Do": "watch with specific refs",
104
+ "Don't": "watchEffect for complex conditional logic",
105
+ "Code Good": "watch(userId, fetchUser)",
106
+ "Code Bad": "watchEffect with conditionals",
107
+ "Severity": "Medium",
108
+ "Docs URL": ""
109
+ },
110
+ {
111
+ "No": "10",
112
+ "Category": "Watchers",
113
+ "Guideline": "Clean up side effects",
114
+ "Description": "Return cleanup function in watchers",
115
+ "Do": "Return cleanup in watchEffect",
116
+ "Don't": "Leave subscriptions open",
117
+ "Code Good": "watchEffect((onCleanup) => { onCleanup(unsub) })",
118
+ "Code Bad": "watchEffect without cleanup",
119
+ "Severity": "High",
120
+ "Docs URL": ""
121
+ },
122
+ {
123
+ "No": "11",
124
+ "Category": "Props",
125
+ "Guideline": "Define props with defineProps",
126
+ "Description": "Type-safe prop definitions",
127
+ "Do": "defineProps with TypeScript",
128
+ "Don't": "Props without types",
129
+ "Code Good": "defineProps<{ msg: string }>()",
130
+ "Code Bad": "defineProps(['msg'])",
131
+ "Severity": "Medium",
132
+ "Docs URL": "https://vuejs.org/guide/typescript/composition-api.html#typing-component-props"
133
+ },
134
+ {
135
+ "No": "12",
136
+ "Category": "Props",
137
+ "Guideline": "Use withDefaults for default values",
138
+ "Description": "Provide defaults for optional props",
139
+ "Do": "withDefaults with defineProps",
140
+ "Don't": "Defaults in destructuring",
141
+ "Code Good": "withDefaults(defineProps<Props>(), { count: 0 })",
142
+ "Code Bad": "const { count = 0 } = defineProps()",
143
+ "Severity": "Medium",
144
+ "Docs URL": ""
145
+ },
146
+ {
147
+ "No": "13",
148
+ "Category": "Props",
149
+ "Guideline": "Avoid mutating props",
150
+ "Description": "Props should be read-only",
151
+ "Do": "Emit events to parent for changes",
152
+ "Don't": "Direct prop mutation",
153
+ "Code Good": "emit('update:modelValue', newVal)",
154
+ "Code Bad": "props.modelValue = newVal",
155
+ "Severity": "High",
156
+ "Docs URL": ""
157
+ },
158
+ {
159
+ "No": "14",
160
+ "Category": "Emits",
161
+ "Guideline": "Define emits with defineEmits",
162
+ "Description": "Type-safe event emissions",
163
+ "Do": "defineEmits with types",
164
+ "Don't": "Emit without definition",
165
+ "Code Good": "defineEmits<{ change: [id: number] }>()",
166
+ "Code Bad": "emit('change', id) without define",
167
+ "Severity": "Medium",
168
+ "Docs URL": "https://vuejs.org/guide/typescript/composition-api.html#typing-component-emits"
169
+ }
170
+ ]