@biggora/claude-plugins 1.2.0 → 1.2.2

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 (185) hide show
  1. package/README.md +11 -4
  2. package/package.json +1 -1
  3. package/registry/registry.json +319 -244
  4. package/specs/coding.md +24 -0
  5. package/specs/pod.md +2 -0
  6. package/src/skills/captcha/README.md +221 -0
  7. package/src/skills/captcha/SKILL.md +355 -0
  8. package/src/skills/captcha/references/captcha-types.md +254 -0
  9. package/src/skills/captcha/references/services.md +172 -0
  10. package/src/skills/captcha/references/stealth.md +238 -0
  11. package/src/skills/captcha/scripts/solve_captcha.py +323 -0
  12. package/src/skills/captcha/scripts/solve_image_grid.py +350 -0
  13. package/src/skills/google-merchant-api/SKILL.md +581 -0
  14. package/src/skills/google-merchant-api/references/accounts.md +247 -0
  15. package/src/skills/google-merchant-api/references/content-api-legacy.md +216 -0
  16. package/src/skills/google-merchant-api/references/datasources.md +233 -0
  17. package/src/skills/google-merchant-api/references/inventories.md +201 -0
  18. package/src/skills/google-merchant-api/references/migration.md +267 -0
  19. package/src/skills/google-merchant-api/references/products.md +316 -0
  20. package/src/skills/google-merchant-api/references/promotions.md +201 -0
  21. package/src/skills/google-merchant-api/references/reports.md +240 -0
  22. package/src/skills/lv-aggregators-api/SKILL.md +113 -0
  23. package/src/skills/lv-aggregators-api/references/integration-guide.md +368 -0
  24. package/src/skills/lv-aggregators-api/references/kurpirkt.md +103 -0
  25. package/src/skills/lv-aggregators-api/references/salidzini.md +122 -0
  26. package/src/skills/tailwindcss-best-practices/SKILL.md +180 -0
  27. package/src/skills/tailwindcss-best-practices/references/best-practices-utility-patterns.md +87 -0
  28. package/src/skills/tailwindcss-best-practices/references/core-installation.md +109 -0
  29. package/src/skills/tailwindcss-best-practices/references/core-preflight.md +200 -0
  30. package/src/skills/tailwindcss-best-practices/references/core-responsive.md +163 -0
  31. package/src/skills/tailwindcss-best-practices/references/core-source-detection.md +114 -0
  32. package/src/skills/tailwindcss-best-practices/references/core-theme.md +108 -0
  33. package/src/skills/tailwindcss-best-practices/references/core-utility-classes.md +59 -0
  34. package/src/skills/tailwindcss-best-practices/references/core-variants.md +204 -0
  35. package/src/skills/tailwindcss-best-practices/references/effects-form-controls.md +76 -0
  36. package/src/skills/tailwindcss-best-practices/references/effects-mask.md +91 -0
  37. package/src/skills/tailwindcss-best-practices/references/effects-scroll-snap.md +59 -0
  38. package/src/skills/tailwindcss-best-practices/references/effects-text-shadow.md +78 -0
  39. package/src/skills/tailwindcss-best-practices/references/effects-transition-animation.md +80 -0
  40. package/src/skills/tailwindcss-best-practices/references/effects-visibility-interactivity.md +82 -0
  41. package/src/skills/tailwindcss-best-practices/references/features-content-detection.md +175 -0
  42. package/src/skills/tailwindcss-best-practices/references/features-custom-styles.md +203 -0
  43. package/src/skills/tailwindcss-best-practices/references/features-dark-mode.md +137 -0
  44. package/src/skills/tailwindcss-best-practices/references/features-functions-directives.md +241 -0
  45. package/src/skills/tailwindcss-best-practices/references/features-upgrade.md +160 -0
  46. package/src/skills/tailwindcss-best-practices/references/layout-aspect-ratio.md +39 -0
  47. package/src/skills/tailwindcss-best-practices/references/layout-columns.md +80 -0
  48. package/src/skills/tailwindcss-best-practices/references/layout-display.md +110 -0
  49. package/src/skills/tailwindcss-best-practices/references/layout-flexbox.md +112 -0
  50. package/src/skills/tailwindcss-best-practices/references/layout-grid.md +87 -0
  51. package/src/skills/tailwindcss-best-practices/references/layout-height.md +97 -0
  52. package/src/skills/tailwindcss-best-practices/references/layout-inset.md +103 -0
  53. package/src/skills/tailwindcss-best-practices/references/layout-logical-properties.md +92 -0
  54. package/src/skills/tailwindcss-best-practices/references/layout-margin.md +126 -0
  55. package/src/skills/tailwindcss-best-practices/references/layout-min-max-sizing.md +63 -0
  56. package/src/skills/tailwindcss-best-practices/references/layout-object-fit-position.md +64 -0
  57. package/src/skills/tailwindcss-best-practices/references/layout-overflow.md +57 -0
  58. package/src/skills/tailwindcss-best-practices/references/layout-padding.md +77 -0
  59. package/src/skills/tailwindcss-best-practices/references/layout-position.md +85 -0
  60. package/src/skills/tailwindcss-best-practices/references/layout-tables.md +67 -0
  61. package/src/skills/tailwindcss-best-practices/references/layout-width.md +102 -0
  62. package/src/skills/tailwindcss-best-practices/references/transform-base.md +68 -0
  63. package/src/skills/tailwindcss-best-practices/references/transform-rotate.md +70 -0
  64. package/src/skills/tailwindcss-best-practices/references/transform-scale.md +83 -0
  65. package/src/skills/tailwindcss-best-practices/references/transform-skew.md +62 -0
  66. package/src/skills/tailwindcss-best-practices/references/transform-translate.md +77 -0
  67. package/src/skills/tailwindcss-best-practices/references/typography-font-text.md +142 -0
  68. package/src/skills/tailwindcss-best-practices/references/typography-list-style.md +65 -0
  69. package/src/skills/tailwindcss-best-practices/references/typography-text-align.md +60 -0
  70. package/src/skills/tailwindcss-best-practices/references/visual-background.md +76 -0
  71. package/src/skills/tailwindcss-best-practices/references/visual-border.md +108 -0
  72. package/src/skills/tailwindcss-best-practices/references/visual-effects.md +111 -0
  73. package/src/skills/tailwindcss-best-practices/references/visual-svg.md +82 -0
  74. package/src/skills/test-mobile-app/SKILL.md +11 -6
  75. package/src/skills/test-mobile-app/scripts/analyze_apk.py +15 -4
  76. package/src/skills/test-mobile-app/scripts/check_environment.py +5 -5
  77. package/src/skills/test-mobile-app/scripts/run_tests.py +1 -1
  78. package/src/skills/test-web-ui/SKILL.md +264 -84
  79. package/src/skills/test-web-ui/scripts/discover.py +25 -12
  80. package/src/skills/test-web-ui/scripts/run_tests.py +3 -2
  81. package/src/skills/vite-best-practices/SKILL.md +115 -0
  82. package/src/skills/vite-best-practices/references/build-and-ssr.md +255 -0
  83. package/src/skills/vite-best-practices/references/core-config.md +231 -0
  84. package/src/skills/vite-best-practices/references/core-features.md +222 -0
  85. package/src/skills/vite-best-practices/references/core-plugin-api.md +294 -0
  86. package/src/skills/vite-best-practices/references/environment-api.md +108 -0
  87. package/src/skills/vite-best-practices/references/rolldown-migration.md +242 -0
  88. package/codex-cli-workspace/iteration-1/benchmark.json +0 -122
  89. package/codex-cli-workspace/iteration-1/eval-1-ci-integration/eval_metadata.json +0 -13
  90. package/codex-cli-workspace/iteration-1/eval-1-ci-integration/with_skill/grading.json +0 -52
  91. package/codex-cli-workspace/iteration-1/eval-1-ci-integration/with_skill/outputs/response.md +0 -163
  92. package/codex-cli-workspace/iteration-1/eval-1-ci-integration/with_skill/timing.json +0 -5
  93. package/codex-cli-workspace/iteration-1/eval-1-ci-integration/without_skill/grading.json +0 -58
  94. package/codex-cli-workspace/iteration-1/eval-1-ci-integration/without_skill/outputs/response.md +0 -151
  95. package/codex-cli-workspace/iteration-1/eval-1-ci-integration/without_skill/timing.json +0 -5
  96. package/codex-cli-workspace/iteration-1/eval-2-mcp-server-config/eval_metadata.json +0 -13
  97. package/codex-cli-workspace/iteration-1/eval-2-mcp-server-config/with_skill/grading.json +0 -52
  98. package/codex-cli-workspace/iteration-1/eval-2-mcp-server-config/with_skill/outputs/response.md +0 -86
  99. package/codex-cli-workspace/iteration-1/eval-2-mcp-server-config/with_skill/timing.json +0 -5
  100. package/codex-cli-workspace/iteration-1/eval-2-mcp-server-config/without_skill/grading.json +0 -58
  101. package/codex-cli-workspace/iteration-1/eval-2-mcp-server-config/without_skill/outputs/response.md +0 -164
  102. package/codex-cli-workspace/iteration-1/eval-2-mcp-server-config/without_skill/timing.json +0 -5
  103. package/codex-cli-workspace/iteration-1/eval-3-profiles-troubleshooting/eval_metadata.json +0 -13
  104. package/codex-cli-workspace/iteration-1/eval-3-profiles-troubleshooting/with_skill/grading.json +0 -52
  105. package/codex-cli-workspace/iteration-1/eval-3-profiles-troubleshooting/with_skill/outputs/response.md +0 -130
  106. package/codex-cli-workspace/iteration-1/eval-3-profiles-troubleshooting/with_skill/timing.json +0 -5
  107. package/codex-cli-workspace/iteration-1/eval-3-profiles-troubleshooting/without_skill/grading.json +0 -64
  108. package/codex-cli-workspace/iteration-1/eval-3-profiles-troubleshooting/without_skill/outputs/response.md +0 -209
  109. package/codex-cli-workspace/iteration-1/eval-3-profiles-troubleshooting/without_skill/timing.json +0 -5
  110. package/codex-cli-workspace/iteration-1/review.html +0 -1325
  111. package/gemini-cli-workspace/iteration-1/benchmark.json +0 -86
  112. package/gemini-cli-workspace/iteration-1/eval-1-cicd-setup/eval_metadata.json +0 -37
  113. package/gemini-cli-workspace/iteration-1/eval-1-cicd-setup/with_skill/grading.json +0 -37
  114. package/gemini-cli-workspace/iteration-1/eval-1-cicd-setup/with_skill/outputs/response.md +0 -401
  115. package/gemini-cli-workspace/iteration-1/eval-1-cicd-setup/with_skill/timing.json +0 -5
  116. package/gemini-cli-workspace/iteration-1/eval-1-cicd-setup/without_skill/grading.json +0 -37
  117. package/gemini-cli-workspace/iteration-1/eval-1-cicd-setup/without_skill/outputs/response.md +0 -405
  118. package/gemini-cli-workspace/iteration-1/eval-1-cicd-setup/without_skill/timing.json +0 -5
  119. package/gemini-cli-workspace/iteration-1/eval-2-mcp-server-config/eval_metadata.json +0 -37
  120. package/gemini-cli-workspace/iteration-1/eval-2-mcp-server-config/with_skill/grading.json +0 -37
  121. package/gemini-cli-workspace/iteration-1/eval-2-mcp-server-config/with_skill/outputs/response.md +0 -212
  122. package/gemini-cli-workspace/iteration-1/eval-2-mcp-server-config/with_skill/timing.json +0 -5
  123. package/gemini-cli-workspace/iteration-1/eval-2-mcp-server-config/without_skill/grading.json +0 -37
  124. package/gemini-cli-workspace/iteration-1/eval-2-mcp-server-config/without_skill/outputs/response.md +0 -427
  125. package/gemini-cli-workspace/iteration-1/eval-2-mcp-server-config/without_skill/timing.json +0 -5
  126. package/gemini-cli-workspace/iteration-1/eval-3-custom-slash-command/eval_metadata.json +0 -32
  127. package/gemini-cli-workspace/iteration-1/eval-3-custom-slash-command/with_skill/grading.json +0 -32
  128. package/gemini-cli-workspace/iteration-1/eval-3-custom-slash-command/with_skill/outputs/response.md +0 -171
  129. package/gemini-cli-workspace/iteration-1/eval-3-custom-slash-command/with_skill/timing.json +0 -5
  130. package/gemini-cli-workspace/iteration-1/eval-3-custom-slash-command/without_skill/grading.json +0 -32
  131. package/gemini-cli-workspace/iteration-1/eval-3-custom-slash-command/without_skill/outputs/response.md +0 -199
  132. package/gemini-cli-workspace/iteration-1/eval-3-custom-slash-command/without_skill/timing.json +0 -5
  133. package/gemini-cli-workspace/iteration-1/review.html +0 -1325
  134. package/gemini-cli-workspace/iteration-2/benchmark.json +0 -173
  135. package/gemini-cli-workspace/iteration-2/benchmark.md +0 -28
  136. package/gemini-cli-workspace/iteration-2/eval-1-cicd-setup/eval_metadata.json +0 -37
  137. package/gemini-cli-workspace/iteration-2/eval-1-cicd-setup/with_skill/grading.json +0 -37
  138. package/gemini-cli-workspace/iteration-2/eval-1-cicd-setup/with_skill/outputs/response.md +0 -195
  139. package/gemini-cli-workspace/iteration-2/eval-1-cicd-setup/with_skill/timing.json +0 -5
  140. package/gemini-cli-workspace/iteration-2/eval-1-cicd-setup/without_skill/grading.json +0 -37
  141. package/gemini-cli-workspace/iteration-2/eval-1-cicd-setup/without_skill/outputs/response.md +0 -377
  142. package/gemini-cli-workspace/iteration-2/eval-1-cicd-setup/without_skill/timing.json +0 -5
  143. package/gemini-cli-workspace/iteration-2/eval-2-mcp-server-config/eval_metadata.json +0 -37
  144. package/gemini-cli-workspace/iteration-2/eval-2-mcp-server-config/with_skill/grading.json +0 -37
  145. package/gemini-cli-workspace/iteration-2/eval-2-mcp-server-config/with_skill/outputs/response.md +0 -127
  146. package/gemini-cli-workspace/iteration-2/eval-2-mcp-server-config/with_skill/timing.json +0 -5
  147. package/gemini-cli-workspace/iteration-2/eval-2-mcp-server-config/without_skill/grading.json +0 -37
  148. package/gemini-cli-workspace/iteration-2/eval-2-mcp-server-config/without_skill/outputs/response.md +0 -164
  149. package/gemini-cli-workspace/iteration-2/eval-2-mcp-server-config/without_skill/timing.json +0 -5
  150. package/gemini-cli-workspace/iteration-2/eval-3-custom-slash-command/eval_metadata.json +0 -32
  151. package/gemini-cli-workspace/iteration-2/eval-3-custom-slash-command/with_skill/grading.json +0 -32
  152. package/gemini-cli-workspace/iteration-2/eval-3-custom-slash-command/with_skill/outputs/response.md +0 -91
  153. package/gemini-cli-workspace/iteration-2/eval-3-custom-slash-command/with_skill/timing.json +0 -5
  154. package/gemini-cli-workspace/iteration-2/eval-3-custom-slash-command/without_skill/grading.json +0 -32
  155. package/gemini-cli-workspace/iteration-2/eval-3-custom-slash-command/without_skill/outputs/response.md +0 -112
  156. package/gemini-cli-workspace/iteration-2/eval-3-custom-slash-command/without_skill/timing.json +0 -5
  157. package/gemini-cli-workspace/iteration-2/eval-viewer.html +0 -1325
  158. package/screen-recording-workspace/evals.json +0 -41
  159. package/screen-recording-workspace/iteration-1/benchmark.json +0 -102
  160. package/screen-recording-workspace/iteration-1/eval-0-fullscreen/eval_metadata.json +0 -31
  161. package/screen-recording-workspace/iteration-1/eval-0-fullscreen/with_skill/grading.json +0 -11
  162. package/screen-recording-workspace/iteration-1/eval-0-fullscreen/with_skill/outputs/demo.mp4 +0 -0
  163. package/screen-recording-workspace/iteration-1/eval-0-fullscreen/with_skill/timing.json +0 -5
  164. package/screen-recording-workspace/iteration-1/eval-0-fullscreen/without_skill/grading.json +0 -11
  165. package/screen-recording-workspace/iteration-1/eval-0-fullscreen/without_skill/outputs/demo.mp4 +0 -0
  166. package/screen-recording-workspace/iteration-1/eval-0-fullscreen/without_skill/timing.json +0 -5
  167. package/screen-recording-workspace/iteration-1/eval-1-region-audio/eval_metadata.json +0 -31
  168. package/screen-recording-workspace/iteration-1/eval-1-region-audio/with_skill/grading.json +0 -11
  169. package/screen-recording-workspace/iteration-1/eval-1-region-audio/with_skill/outputs/region_capture.mp4 +0 -0
  170. package/screen-recording-workspace/iteration-1/eval-1-region-audio/with_skill/timing.json +0 -5
  171. package/screen-recording-workspace/iteration-1/eval-1-region-audio/without_skill/grading.json +0 -11
  172. package/screen-recording-workspace/iteration-1/eval-1-region-audio/without_skill/outputs/region_capture.mp4 +0 -0
  173. package/screen-recording-workspace/iteration-1/eval-1-region-audio/without_skill/timing.json +0 -5
  174. package/screen-recording-workspace/iteration-1/eval-2-python-fallback/eval_metadata.json +0 -31
  175. package/screen-recording-workspace/iteration-1/eval-2-python-fallback/with_skill/grading.json +0 -11
  176. package/screen-recording-workspace/iteration-1/eval-2-python-fallback/with_skill/outputs/fallback_recording.mp4 +0 -0
  177. package/screen-recording-workspace/iteration-1/eval-2-python-fallback/with_skill/timing.json +0 -5
  178. package/screen-recording-workspace/iteration-1/eval-2-python-fallback/without_skill/grading.json +0 -11
  179. package/screen-recording-workspace/iteration-1/eval-2-python-fallback/without_skill/outputs/fallback_recording.mp4 +0 -0
  180. package/screen-recording-workspace/iteration-1/eval-2-python-fallback/without_skill/outputs/record_screen.py +0 -67
  181. package/screen-recording-workspace/iteration-1/eval-2-python-fallback/without_skill/timing.json +0 -5
  182. package/screen-recording-workspace/iteration-1/review.html +0 -1325
  183. package/src/skills/codex-cli/evals/evals.json +0 -47
  184. package/src/skills/gemini-cli/evals/evals.json +0 -46
  185. package/src/skills/tm-search/evals/evals.json +0 -23
@@ -0,0 +1,76 @@
1
+ ---
2
+ name: effects-form-controls
3
+ description: Form control styling with accent-color, appearance, caret-color, and resize
4
+ ---
5
+
6
+ # Form Controls & Input Styling
7
+
8
+ Utilities for styling form controls: accent color, native appearance, caret color, and resize behavior.
9
+
10
+ ## Usage
11
+
12
+ ### Accent color
13
+
14
+ Control the accent color of checkboxes, radio buttons, range inputs, and progress:
15
+
16
+ ```html
17
+ <input type="checkbox" class="accent-pink-500" checked />
18
+ <input type="radio" class="accent-rose-500" name="opt" />
19
+ <input type="range" class="accent-indigo-500" />
20
+
21
+ <!-- Opacity modifier -->
22
+ <input type="checkbox" class="accent-purple-500/75" />
23
+ ```
24
+
25
+ ### Appearance
26
+
27
+ Remove native form control styling for custom designs:
28
+
29
+ ```html
30
+ <!-- Custom select with overlay icon -->
31
+ <div class="grid">
32
+ <select class="col-start-1 row-start-1 appearance-none bg-gray-50 ...">
33
+ <option>Yes</option>
34
+ </select>
35
+ <svg class="pointer-events-none col-start-1 row-start-1 ...">...</svg>
36
+ </div>
37
+
38
+ <!-- Restore default in forced-colors mode (accessibility) -->
39
+ <input type="checkbox" class="appearance-none forced-colors:appearance-auto" />
40
+ ```
41
+
42
+ ### Caret color
43
+
44
+ Set the text input cursor color:
45
+
46
+ ```html
47
+ <textarea class="caret-pink-500">Focus to see caret</textarea>
48
+ <input class="caret-blue-500" />
49
+ ```
50
+
51
+ ### Resize
52
+
53
+ Control textarea resize behavior:
54
+
55
+ ```html
56
+ <textarea class="resize-y">Vertical only</textarea>
57
+ <textarea class="resize-x">Horizontal only</textarea>
58
+ <textarea class="resize">Both directions</textarea>
59
+ <textarea class="resize-none">No resize handle</textarea>
60
+ ```
61
+
62
+ ## Key Points
63
+
64
+ - `accent-*` - theme colors for checkboxes, radio, range; use `accent-[#hex]` or `accent-(--var)` for custom
65
+ - `appearance-none` - remove native styling (custom selects, checkboxes)
66
+ - `appearance-auto` - restore default (e.g. for `forced-colors: active`)
67
+ - `caret-*` - theme colors for input cursor; matches text color patterns
68
+ - `resize` - both; `resize-x` - horizontal; `resize-y` - vertical; `resize-none` - no handle
69
+
70
+ <!--
71
+ Source references:
72
+ - https://tailwindcss.com/docs/accent-color
73
+ - https://tailwindcss.com/docs/appearance
74
+ - https://tailwindcss.com/docs/caret-color
75
+ - https://tailwindcss.com/docs/resize
76
+ -->
@@ -0,0 +1,91 @@
1
+ ---
2
+ name: effects-mask
3
+ description: Composable mask utilities added in Tailwind CSS v4.1 — linear gradient masks, radial masks, and positioning
4
+ ---
5
+
6
+ # Mask Utilities (v4.1+)
7
+
8
+ Composable mask system for creating fade, reveal, and shape effects. Added in Tailwind CSS v4.1.
9
+
10
+ ## Linear Gradient Masks
11
+
12
+ Fade elements from a direction using gradient masks:
13
+
14
+ ```html
15
+ <!-- Fade from top (visible at top, fades to transparent) -->
16
+ <div class="mask-t-from-50%">Content fades from top</div>
17
+
18
+ <!-- Fade from right -->
19
+ <div class="mask-r-from-30%">Content fades from right</div>
20
+
21
+ <!-- Fade from bottom -->
22
+ <div class="mask-b-from-20%">Content fades from bottom</div>
23
+
24
+ <!-- Fade from left -->
25
+ <div class="mask-l-from-40%">Content fades from left</div>
26
+ ```
27
+
28
+ The `from-` value sets where the mask starts becoming transparent.
29
+
30
+ ## Radial Masks
31
+
32
+ Create circular or elliptical mask effects:
33
+
34
+ ```html
35
+ <!-- Radial mask with from/to values -->
36
+ <div class="mask-radial-from-70% mask-radial-to-85%">
37
+ Circular fade from center
38
+ </div>
39
+
40
+ <!-- Position the radial mask -->
41
+ <div class="mask-radial-from-50% mask-radial-at-top-left">
42
+ Fade from top-left corner
43
+ </div>
44
+ ```
45
+
46
+ ## Composing Masks
47
+
48
+ Masks can be composed — multiple mask utilities combine:
49
+
50
+ ```html
51
+ <!-- Fade from both right and bottom -->
52
+ <div class="mask-r-from-80% mask-b-from-80%">
53
+ Fades from both edges
54
+ </div>
55
+
56
+ <!-- Radial mask with directional fade -->
57
+ <div class="mask-radial-from-70% mask-radial-to-85% mask-t-from-50%">
58
+ Complex mask composition
59
+ </div>
60
+ ```
61
+
62
+ ## Common Patterns
63
+
64
+ ### Image with fade-out edges
65
+
66
+ ```html
67
+ <div class="mask-b-from-70% overflow-hidden">
68
+ <img src="/photo.jpg" class="w-full" />
69
+ </div>
70
+ ```
71
+
72
+ ### Spotlight / vignette effect
73
+
74
+ ```html
75
+ <div class="mask-radial-from-60% mask-radial-to-90%">
76
+ <img src="/hero.jpg" class="w-full" />
77
+ </div>
78
+ ```
79
+
80
+ ## Key Points
81
+
82
+ - Linear mask directions: `mask-t-*`, `mask-r-*`, `mask-b-*`, `mask-l-*`
83
+ - Radial masks: `mask-radial-from-*`, `mask-radial-to-*`, `mask-radial-at-*`
84
+ - Masks are composable — multiple masks combine together
85
+ - Works with all variants: `hover:mask-b-from-50%`
86
+ - The `from-` percentage controls where the fade begins
87
+
88
+ <!--
89
+ Source references:
90
+ - https://tailwindcss.com/blog/tailwindcss-v4-1
91
+ -->
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: effects-scroll-snap
3
+ description: CSS scroll snap for carousels and scroll containers
4
+ ---
5
+
6
+ # Scroll Snap
7
+
8
+ Utilities for scroll snap behavior in overflow containers. Use for carousels, horizontal galleries, or paged scroll.
9
+
10
+ ## Usage
11
+
12
+ ### Container
13
+
14
+ ```html
15
+ <!-- Horizontal snap (carousel) -->
16
+ <div class="snap-x snap-mandatory overflow-x-auto flex gap-4">
17
+ <div class="snap-center shrink-0 w-80">Slide 1</div>
18
+ <div class="snap-center shrink-0 w-80">Slide 2</div>
19
+ <div class="snap-center shrink-0 w-80">Slide 3</div>
20
+ </div>
21
+
22
+ <!-- Vertical snap -->
23
+ <div class="snap-y snap-mandatory overflow-y-auto h-screen">
24
+ <div class="snap-start h-screen">Section 1</div>
25
+ <div class="snap-start h-screen">Section 2</div>
26
+ </div>
27
+
28
+ <!-- Both axes -->
29
+ <div class="snap-both overflow-auto">...</div>
30
+ ```
31
+
32
+ ### Strictness
33
+
34
+ - `snap-mandatory` - always rest on a snap point
35
+ - `snap-proximity` - snap only when close to a point (default)
36
+
37
+ ### Child alignment
38
+
39
+ ```html
40
+ <div class="snap-x overflow-x-auto">
41
+ <div class="snap-center">Center snap</div>
42
+ <div class="snap-start">Start snap</div>
43
+ <div class="snap-end">End snap</div>
44
+ <div class="snap-align-none">No snap</div>
45
+ </div>
46
+ ```
47
+
48
+ ## Key Points
49
+
50
+ - `snap-x` - horizontal; `snap-y` - vertical; `snap-both` - both; `snap-none` - disable
51
+ - `snap-mandatory` / `snap-proximity` - strictness
52
+ - Child: `snap-center`, `snap-start`, `snap-end`, `snap-align-none`
53
+ - Requires overflow (e.g. `overflow-x-auto`) and scroll on container
54
+
55
+ <!--
56
+ Source references:
57
+ - https://tailwindcss.com/docs/scroll-snap-type
58
+ - https://tailwindcss.com/docs/scroll-snap-align
59
+ -->
@@ -0,0 +1,78 @@
1
+ ---
2
+ name: effects-text-shadow
3
+ description: Text shadow utilities added in Tailwind CSS v4.1 — sizes, colors, and opacity modifiers
4
+ ---
5
+
6
+ # Text Shadow (v4.1+)
7
+
8
+ Text shadow utilities for adding shadows to text content. Added in Tailwind CSS v4.1.
9
+
10
+ ## Sizes
11
+
12
+ Five default sizes:
13
+
14
+ ```html
15
+ <p class="text-shadow-2xs">Extra extra small shadow</p>
16
+ <p class="text-shadow-xs">Extra small shadow</p>
17
+ <p class="text-shadow-sm">Small shadow</p>
18
+ <p class="text-shadow-md">Medium shadow</p>
19
+ <p class="text-shadow-lg">Large shadow</p>
20
+ ```
21
+
22
+ Remove text shadow:
23
+
24
+ ```html
25
+ <p class="text-shadow-none">No shadow</p>
26
+ ```
27
+
28
+ ## Colors
29
+
30
+ Apply a color to the text shadow:
31
+
32
+ ```html
33
+ <p class="text-shadow-lg text-shadow-blue-500">Blue shadow</p>
34
+ <p class="text-shadow-md text-shadow-gray-900">Dark shadow</p>
35
+ ```
36
+
37
+ ## Opacity Modifiers
38
+
39
+ Control shadow opacity with the slash modifier:
40
+
41
+ ```html
42
+ <p class="text-shadow-lg/50">50% opacity shadow</p>
43
+ <p class="text-shadow-md text-shadow-sky-300/25">Sky shadow at 25%</p>
44
+ ```
45
+
46
+ ## Common Patterns
47
+
48
+ ### Readable text over images
49
+
50
+ ```html
51
+ <div class="relative">
52
+ <img src="/hero.jpg" class="w-full" />
53
+ <h1 class="absolute text-white text-shadow-lg text-shadow-black/50">
54
+ Hero Title
55
+ </h1>
56
+ </div>
57
+ ```
58
+
59
+ ### Subtle heading enhancement
60
+
61
+ ```html
62
+ <h2 class="text-4xl font-bold text-shadow-sm text-shadow-gray-300">
63
+ Section Title
64
+ </h2>
65
+ ```
66
+
67
+ ## Key Points
68
+
69
+ - Text shadows are separate from box shadows (`shadow-*`)
70
+ - Size and color are independent utilities that combine
71
+ - Opacity modifier goes on the size: `text-shadow-lg/50`
72
+ - Use `text-shadow-none` to remove shadows
73
+ - Works with all variants: `hover:text-shadow-lg`, `dark:text-shadow-md`
74
+
75
+ <!--
76
+ Source references:
77
+ - https://tailwindcss.com/blog/tailwindcss-v4-1
78
+ -->
@@ -0,0 +1,80 @@
1
+ ---
2
+ name: effects-transition-animation
3
+ description: CSS transitions, animation keyframes, and reduced motion support
4
+ ---
5
+
6
+ # Transition & Animation
7
+
8
+ Utilities for CSS transitions and animations.
9
+
10
+ ## Usage
11
+
12
+ ### Transition property
13
+
14
+ ```html
15
+ <button class="transition hover:bg-blue-600">Transitions common properties</button>
16
+ <button class="transition-all hover:scale-110">All properties</button>
17
+ <button class="transition-colors hover:bg-indigo-500">Colors only</button>
18
+ <button class="transition-opacity hover:opacity-75">Opacity only</button>
19
+ <button class="transition-transform hover:translate-y-1">Transform only</button>
20
+ <button class="transition-none">No transition</button>
21
+ ```
22
+
23
+ ### Transition duration and delay
24
+
25
+ ```html
26
+ <button class="transition duration-150">150ms (default)</button>
27
+ <button class="transition duration-300">300ms</button>
28
+ <button class="transition duration-500">500ms</button>
29
+ <button class="transition delay-150">Delay 150ms</button>
30
+ <button class="transition duration-300 delay-100">Both</button>
31
+ ```
32
+
33
+ ### Transition timing
34
+
35
+ ```html
36
+ <button class="transition ease-linear">Linear</button>
37
+ <button class="transition ease-in">Ease in</button>
38
+ <button class="transition ease-out">Ease out</button>
39
+ <button class="transition ease-in-out">Ease in-out (default)</button>
40
+ <button class="transition ease-[cubic-bezier(0.4,0,0.2,1)]">Arbitrary</button>
41
+ ```
42
+
43
+ ### Animation keyframes
44
+
45
+ ```html
46
+ <div class="animate-spin">Spinning</div>
47
+ <div class="animate-ping">Ping effect</div>
48
+ <div class="animate-pulse">Pulse</div>
49
+ <div class="animate-bounce">Bounce</div>
50
+ ```
51
+
52
+ Built-in: `animate-spin`, `animate-ping`, `animate-pulse`, `animate-bounce`. Use `@keyframes` in custom CSS for more.
53
+
54
+ ### Reduced motion
55
+
56
+ ```html
57
+ <button class="transition hover:-translate-y-1 motion-reduce:transition-none motion-reduce:hover:translate-y-0">
58
+ Respects prefers-reduced-motion
59
+ </button>
60
+ <div class="animate-spin motion-reduce:animate-none">Spinner hidden when reduced motion</div>
61
+ ```
62
+
63
+ Use `motion-reduce:` to disable or simplify animations when user prefers reduced motion.
64
+
65
+ ## Key Points
66
+
67
+ - Transition: `transition`, `transition-all`, `transition-colors`, `transition-opacity`, `transition-transform`
68
+ - Duration: `duration-{75,100,150,200,300,500,700,1000}`
69
+ - Delay: `delay-{75,100,150,200,300,500,700,1000}`
70
+ - Timing: `ease-{linear,in,in-out,out}`
71
+ - Animation: `animate-spin`, `animate-ping`, `animate-pulse`, `animate-bounce`
72
+ - Always consider `motion-reduce:` for accessibility
73
+
74
+ <!--
75
+ Source references:
76
+ - https://tailwindcss.com/docs/transition-property
77
+ - https://tailwindcss.com/docs/transition-duration
78
+ - https://tailwindcss.com/docs/transition-timing-function
79
+ - https://tailwindcss.com/docs/animation
80
+ -->
@@ -0,0 +1,82 @@
1
+ ---
2
+ name: effects-visibility-interactivity
3
+ description: Visibility, cursor, pointer-events, user-select, and z-index
4
+ ---
5
+
6
+ # Visibility & Interactivity
7
+
8
+ Utilities for visibility, cursor, pointer-events, user-select, and stacking.
9
+
10
+ ## Usage
11
+
12
+ ### Visibility
13
+
14
+ ```html
15
+ <div class="visible">Visible (default)</div>
16
+ <div class="invisible">Hidden but in layout</div>
17
+ <div class="collapse">Table collapse</div>
18
+ ```
19
+
20
+ Use `invisible` when you need to keep layout space; use `hidden` (display:none) to remove from flow.
21
+
22
+ ### Cursor
23
+
24
+ ```html
25
+ <button class="cursor-pointer">Pointer</button>
26
+ <div class="cursor-not-allowed">Disabled</div>
27
+ <div class="cursor-wait">Loading</div>
28
+ <div class="cursor-move">Draggable</div>
29
+ <div class="cursor-grab">Grab</div>
30
+ <div class="cursor-grabbing">Grabbing</div>
31
+ <div class="cursor-text">Text select</div>
32
+ <div class="cursor-default">Default</div>
33
+ <div class="cursor-none">No cursor</div>
34
+ ```
35
+
36
+ ### Pointer events
37
+
38
+ ```html
39
+ <div class="pointer-events-none">Ignore all pointer events</div>
40
+ <div class="pointer-events-auto">Default behavior</div>
41
+ ```
42
+
43
+ Useful for overlays: make overlay `pointer-events-none` so clicks pass through, or `pointer-events-none` on disabled elements.
44
+
45
+ ### User select
46
+
47
+ ```html
48
+ <p class="select-none">Cannot select</p>
49
+ <p class="select-text">Select text (default)</p>
50
+ <p class="select-all">Select all on click</p>
51
+ <p class="select-auto">Browser default</p>
52
+ ```
53
+
54
+ ### Z-index
55
+
56
+ ```html
57
+ <div class="z-0">0</div>
58
+ <div class="z-10">10</div>
59
+ <div class="z-20">20</div>
60
+ <div class="z-50">50</div>
61
+ <div class="z-auto">Auto</div>
62
+ <div class="z-[100]">Arbitrary</div>
63
+ ```
64
+
65
+ Common: `z-0` (base), `z-10` (dropdowns), `z-20` (fixed nav), `z-50` (modal), `z-40` (overlay).
66
+
67
+ ## Key Points
68
+
69
+ - Visibility: `visible`, `invisible`, `collapse`
70
+ - Cursor: `cursor-{pointer,not-allowed,wait,move,grab,text,default,none}`
71
+ - Pointer events: `pointer-events-none`, `pointer-events-auto`
72
+ - User select: `select-none`, `select-text`, `select-all`
73
+ - Z-index: `z-{0,10,20,30,40,50,auto}`, `z-[n]`
74
+
75
+ <!--
76
+ Source references:
77
+ - https://tailwindcss.com/docs/visibility
78
+ - https://tailwindcss.com/docs/cursor
79
+ - https://tailwindcss.com/docs/pointer-events
80
+ - https://tailwindcss.com/docs/user-select
81
+ - https://tailwindcss.com/docs/z-index
82
+ -->
@@ -0,0 +1,175 @@
1
+ ---
2
+ name: features-content-detection
3
+ description: How Tailwind detects classes in source files and how to customize content scanning
4
+ ---
5
+
6
+ # Detecting Classes in Source Files
7
+
8
+ Tailwind scans your project for utility classes and generates CSS based on what you've actually used.
9
+
10
+ ## How Classes Are Detected
11
+
12
+ Tailwind treats all source files as plain text and looks for tokens that could be class names:
13
+
14
+ ```jsx
15
+ export function Button({ color, children }) {
16
+ const colors = {
17
+ black: "bg-black text-white",
18
+ blue: "bg-blue-500 text-white",
19
+ };
20
+
21
+ return (
22
+ <button className={`${colors[color]} rounded-full px-2 py-1.5`}>
23
+ {children}
24
+ </button>
25
+ );
26
+ }
27
+ ```
28
+
29
+ Tailwind detects `bg-black`, `text-white`, `bg-blue-500`, `rounded-full`, `px-2`, and `py-1.5` from this file.
30
+
31
+ ## Dynamic Class Names
32
+
33
+ Tailwind scans files as plain text, so it can't understand string concatenation or interpolation.
34
+
35
+ ### ❌ Don't Construct Classes Dynamically
36
+
37
+ ```html
38
+ <div class="text-{{ error ? 'red' : 'green' }}-600"></div>
39
+ ```
40
+
41
+ The strings `text-red-600` and `text-green-600` don't exist in the file, so Tailwind won't generate them.
42
+
43
+ ### ✅ Use Complete Class Names
44
+
45
+ ```html
46
+ <div class="{{ error ? 'text-red-600' : 'text-green-600' }}">
47
+ Content
48
+ </div>
49
+ ```
50
+
51
+ ### ❌ Don't Build Classes from Props
52
+
53
+ ```jsx
54
+ function Button({ color, children }) {
55
+ return <button className={`bg-${color}-600 hover:bg-${color}-500`}>{children}</button>;
56
+ }
57
+ ```
58
+
59
+ ### ✅ Map Props to Static Classes
60
+
61
+ ```jsx
62
+ function Button({ color, children }) {
63
+ const colorVariants = {
64
+ blue: "bg-blue-600 hover:bg-blue-500",
65
+ red: "bg-red-600 hover:bg-red-500",
66
+ };
67
+
68
+ return <button className={`${colorVariants[color]} ...`}>{children}</button>;
69
+ }
70
+ ```
71
+
72
+ ## Which Files Are Scanned
73
+
74
+ Tailwind scans every file in your project except:
75
+
76
+ - Files in `.gitignore`
77
+ - Files in `node_modules`
78
+ - Binary files (images, videos, zip files)
79
+ - CSS files
80
+ - Common package manager lock files
81
+
82
+ ## Explicitly Registering Sources
83
+
84
+ Use `@source` to explicitly register source paths:
85
+
86
+ ```css
87
+ @import "tailwindcss";
88
+ @source "../node_modules/@acmecorp/ui-lib";
89
+ ```
90
+
91
+ This is useful for external libraries built with Tailwind that are in `.gitignore`.
92
+
93
+ ## Setting Base Path
94
+
95
+ Set the base path for source detection:
96
+
97
+ ```css
98
+ @import "tailwindcss" source("../src");
99
+ ```
100
+
101
+ Useful in monorepos where build commands run from the root.
102
+
103
+ ## Ignoring Specific Paths
104
+
105
+ Use `@source not` to ignore paths:
106
+
107
+ ```css
108
+ @import "tailwindcss";
109
+ @source not "../src/components/legacy";
110
+ ```
111
+
112
+ ## Disabling Automatic Detection
113
+
114
+ Use `source(none)` to disable automatic detection:
115
+
116
+ ```css
117
+ @import "tailwindcss" source(none);
118
+
119
+ @source "../admin";
120
+ @source "../shared";
121
+ ```
122
+
123
+ Useful for projects with multiple Tailwind stylesheets.
124
+
125
+ ## Safelisting Utilities
126
+
127
+ Force Tailwind to generate specific classes with `@source inline()`:
128
+
129
+ ```css
130
+ @import "tailwindcss";
131
+ @source inline("underline");
132
+ ```
133
+
134
+ ### Safelisting with Variants
135
+
136
+ Generate classes with variants:
137
+
138
+ ```css
139
+ @import "tailwindcss";
140
+ @source inline("{hover:,focus:,}underline");
141
+ ```
142
+
143
+ ### Safelisting with Ranges
144
+
145
+ Use brace expansion to generate multiple classes:
146
+
147
+ ```css
148
+ @import "tailwindcss";
149
+ @source inline("{hover:,}bg-red-{50,{100..900..100},950}");
150
+ ```
151
+
152
+ This generates `bg-red-50` through `bg-red-950` with hover variants.
153
+
154
+ ## Explicitly Excluding Classes
155
+
156
+ Use `@source not inline()` to prevent specific classes from being generated:
157
+
158
+ ```css
159
+ @import "tailwindcss";
160
+ @source not inline("{hover:,focus:,}bg-red-{50,{100..900..100},950}");
161
+ ```
162
+
163
+ ## Key Points
164
+
165
+ - Tailwind scans files as plain text
166
+ - Always use complete class names, never construct them dynamically
167
+ - Map props/state to static class names
168
+ - Use `@source` to explicitly register or ignore paths
169
+ - Use `@source inline()` to safelist utilities
170
+ - Brace expansion works in inline sources for ranges
171
+
172
+ <!--
173
+ Source references:
174
+ - https://tailwindcss.com/docs/detecting-classes-in-source-files
175
+ -->