love-ui 1.2.15 → 1.2.18

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 (464) hide show
  1. package/README.md +14 -6
  2. package/dist/index.js +149 -0
  3. package/dist/mcp-server.js +2 -0
  4. package/package.json +28 -4
  5. package/registry/__index__.tsx +73 -0
  6. package/registry/default/blocks/404-1/app/page.tsx +5 -0
  7. package/registry/default/blocks/404-1/components/full-width-divider.tsx +33 -0
  8. package/registry/default/blocks/404-1/components/not-found.tsx +51 -0
  9. package/registry/default/blocks/404-2/app/page.tsx +5 -0
  10. package/registry/default/blocks/404-2/components/not-found.tsx +44 -0
  11. package/registry/default/blocks/auth1/app/page.tsx +5 -0
  12. package/registry/default/blocks/auth1/components/auth-page.tsx +66 -0
  13. package/registry/default/blocks/auth1/components/icons/github-icon.tsx +10 -0
  14. package/registry/default/blocks/auth1/components/icons/google-icon.tsx +14 -0
  15. package/registry/default/blocks/auth1/components/logo.tsx +88 -0
  16. package/registry/default/blocks/auth1/components/particles.tsx +321 -0
  17. package/registry/default/blocks/auth2/app/page.tsx +5 -0
  18. package/registry/default/blocks/auth2/components/auth.tsx +87 -0
  19. package/registry/default/blocks/auth2/components/icons/github-icon.tsx +10 -0
  20. package/registry/default/blocks/auth2/components/icons/google-icon.tsx +14 -0
  21. package/registry/default/blocks/auth2/components/ui/auth-divider.tsx +16 -0
  22. package/registry/default/blocks/auth2/components/ui/decor-icon.tsx +45 -0
  23. package/registry/default/blocks/auth3/app/page.tsx +5 -0
  24. package/registry/default/blocks/auth3/components/auth-page.tsx +84 -0
  25. package/registry/default/blocks/auth3/components/icons/github-icon.tsx +10 -0
  26. package/registry/default/blocks/auth3/components/icons/google-icon.tsx +14 -0
  27. package/registry/default/blocks/auth3/components/logo.tsx +88 -0
  28. package/registry/default/blocks/auth3/components/ui/auth-divider.tsx +16 -0
  29. package/registry/default/blocks/auth3/components/ui/decor-icon.tsx +45 -0
  30. package/registry/default/blocks/blogs1/app/page.tsx +5 -0
  31. package/registry/default/blocks/blogs1/components/blogs.tsx +97 -0
  32. package/registry/default/blocks/blogs1/components/full-width-divider.tsx +33 -0
  33. package/registry/default/blocks/blogs2/app/page.tsx +5 -0
  34. package/registry/default/blocks/blogs2/components/blogs.tsx +158 -0
  35. package/registry/default/blocks/blogs2/components/full-width-divider.tsx +33 -0
  36. package/registry/default/blocks/blogs2/components/grid-filler.tsx +74 -0
  37. package/registry/default/blocks/blogs3/app/page.tsx +5 -0
  38. package/registry/default/blocks/blogs3/components/aspect-ratio.tsx +22 -0
  39. package/registry/default/blocks/blogs3/components/blogs.tsx +224 -0
  40. package/registry/default/blocks/blogs3/components/full-width-divider.tsx +33 -0
  41. package/registry/default/blocks/blogs3/components/lazy-image.tsx +94 -0
  42. package/registry/default/blocks/contact1/app/page.tsx +9 -0
  43. package/registry/default/blocks/contact1/components/contact.tsx +65 -0
  44. package/registry/default/blocks/contact1/components/full-width-divider.tsx +33 -0
  45. package/registry/default/blocks/contact2/app/page.tsx +9 -0
  46. package/registry/default/blocks/contact2/components/contact.tsx +74 -0
  47. package/registry/default/blocks/contact2/components/full-width-divider.tsx +33 -0
  48. package/registry/default/blocks/contact2/components/icons/x-icon.tsx +12 -0
  49. package/registry/default/blocks/contact3/app/page.tsx +9 -0
  50. package/registry/default/blocks/contact3/components/contact.tsx +152 -0
  51. package/registry/default/blocks/contact3/components/full-width-divider.tsx +33 -0
  52. package/registry/default/blocks/contact3/components/icons/github-icon.tsx +10 -0
  53. package/registry/default/blocks/contact3/components/icons/x-icon.tsx +12 -0
  54. package/registry/default/blocks/contact4/app/page.tsx +9 -0
  55. package/registry/default/blocks/contact4/components/contact.tsx +120 -0
  56. package/registry/default/blocks/contact5/app/page.tsx +9 -0
  57. package/registry/default/blocks/contact5/components/contact.tsx +119 -0
  58. package/registry/default/blocks/contact5/components/decor-icon.tsx +45 -0
  59. package/registry/default/blocks/cta-1/app/page.tsx +9 -0
  60. package/registry/default/blocks/cta-1/components/cta.tsx +20 -0
  61. package/registry/default/blocks/cta-1/components/full-width-divider.tsx +33 -0
  62. package/registry/default/blocks/cta-2/app/page.tsx +9 -0
  63. package/registry/default/blocks/cta-2/components/cta.tsx +27 -0
  64. package/registry/default/blocks/cta-2/components/full-width-divider.tsx +33 -0
  65. package/registry/default/blocks/cta-3/app/page.tsx +9 -0
  66. package/registry/default/blocks/cta-3/components/cta.tsx +35 -0
  67. package/registry/default/blocks/cta-3/components/decor-icon.tsx +45 -0
  68. package/registry/default/blocks/cta-4/app/page.tsx +9 -0
  69. package/registry/default/blocks/cta-4/components/cta.tsx +28 -0
  70. package/registry/default/blocks/cta-5/app/page.tsx +9 -0
  71. package/registry/default/blocks/cta-5/components/cta.tsx +72 -0
  72. package/registry/default/blocks/cta-5/components/full-width-divider.tsx +33 -0
  73. package/registry/default/blocks/faq-1/app/page.tsx +9 -0
  74. package/registry/default/blocks/faq-1/components/faq.tsx +86 -0
  75. package/registry/default/blocks/faq-2/app/page.tsx +9 -0
  76. package/registry/default/blocks/faq-2/components/faq.tsx +93 -0
  77. package/registry/default/blocks/faq-3/app/page.tsx +9 -0
  78. package/registry/default/blocks/faq-3/components/decor-icon.tsx +45 -0
  79. package/registry/default/blocks/faq-3/components/faq.tsx +110 -0
  80. package/registry/default/blocks/faq-4/app/page.tsx +9 -0
  81. package/registry/default/blocks/faq-4/components/faq.tsx +181 -0
  82. package/registry/default/blocks/faq-5/app/page.tsx +9 -0
  83. package/registry/default/blocks/faq-5/components/faq.tsx +211 -0
  84. package/registry/default/blocks/faq-5/components/full-width-divider.tsx +33 -0
  85. package/registry/default/blocks/features1/app/page.tsx +9 -0
  86. package/registry/default/blocks/features1/components/feature-section.tsx +73 -0
  87. package/registry/default/blocks/features2/app/page.tsx +9 -0
  88. package/registry/default/blocks/features2/components/decor-icon.tsx +45 -0
  89. package/registry/default/blocks/features2/components/feature-section.tsx +97 -0
  90. package/registry/default/blocks/features3/app/page.tsx +9 -0
  91. package/registry/default/blocks/features3/components/feature-section.tsx +93 -0
  92. package/registry/default/blocks/features3/components/full-width-divider.tsx +21 -0
  93. package/registry/default/blocks/features4/app/page.tsx +9 -0
  94. package/registry/default/blocks/features4/components/decor-icon.tsx +45 -0
  95. package/registry/default/blocks/features4/components/feature-section.tsx +114 -0
  96. package/registry/default/blocks/features5/app/page.tsx +9 -0
  97. package/registry/default/blocks/features5/components/feature-section.tsx +115 -0
  98. package/registry/default/blocks/features5/components/grid-pattern.tsx +70 -0
  99. package/registry/default/blocks/features6/app/page.tsx +9 -0
  100. package/registry/default/blocks/features6/components/cobe-globe.tsx +86 -0
  101. package/registry/default/blocks/features6/components/feature-section.tsx +309 -0
  102. package/registry/default/blocks/footer1/app/page.tsx +9 -0
  103. package/registry/default/blocks/footer1/components/footer.tsx +85 -0
  104. package/registry/default/blocks/footer1/components/icons/github-icon.tsx +10 -0
  105. package/registry/default/blocks/footer1/components/icons/x-icon.tsx +12 -0
  106. package/registry/default/blocks/footer1/components/logo.tsx +88 -0
  107. package/registry/default/blocks/footer2/app/page.tsx +9 -0
  108. package/registry/default/blocks/footer2/components/footer.tsx +139 -0
  109. package/registry/default/blocks/footer2/components/full-width-divider.tsx +21 -0
  110. package/registry/default/blocks/footer2/components/icons/github-icon.tsx +10 -0
  111. package/registry/default/blocks/footer2/components/icons/instagram-icon.tsx +12 -0
  112. package/registry/default/blocks/footer2/components/icons/x-icon.tsx +12 -0
  113. package/registry/default/blocks/footer2/components/logo.tsx +88 -0
  114. package/registry/default/blocks/footer3/app/page.tsx +9 -0
  115. package/registry/default/blocks/footer3/components/footer.tsx +155 -0
  116. package/registry/default/blocks/footer3/components/icons/github-icon.tsx +10 -0
  117. package/registry/default/blocks/footer3/components/icons/instagram-icon.tsx +12 -0
  118. package/registry/default/blocks/footer3/components/icons/linkedin-icon.tsx +12 -0
  119. package/registry/default/blocks/footer3/components/icons/x-icon.tsx +12 -0
  120. package/registry/default/blocks/footer3/components/logo.tsx +88 -0
  121. package/registry/default/blocks/footer4/app/page.tsx +9 -0
  122. package/registry/default/blocks/footer4/components/footer.tsx +137 -0
  123. package/registry/default/blocks/footer4/components/icons/github-icon.tsx +10 -0
  124. package/registry/default/blocks/footer4/components/icons/instagram-icon.tsx +12 -0
  125. package/registry/default/blocks/footer4/components/icons/linkedin-icon.tsx +12 -0
  126. package/registry/default/blocks/footer4/components/icons/x-icon.tsx +12 -0
  127. package/registry/default/blocks/footer4/components/logo.tsx +88 -0
  128. package/registry/default/blocks/footer5/app/page.tsx +9 -0
  129. package/registry/default/blocks/footer5/components/footer.tsx +152 -0
  130. package/registry/default/blocks/footer5/components/icons/apple-icon.tsx +18 -0
  131. package/registry/default/blocks/footer5/components/icons/facebook-icon.tsx +12 -0
  132. package/registry/default/blocks/footer5/components/icons/google-play-icon.tsx +10 -0
  133. package/registry/default/blocks/footer5/components/icons/instagram-icon.tsx +12 -0
  134. package/registry/default/blocks/footer5/components/icons/linkedin-icon.tsx +12 -0
  135. package/registry/default/blocks/footer5/components/icons/x-icon.tsx +12 -0
  136. package/registry/default/blocks/footer5/components/logo.tsx +88 -0
  137. package/registry/default/blocks/footer6/app/page.tsx +16 -0
  138. package/registry/default/blocks/footer6/components/footer.tsx +220 -0
  139. package/registry/default/blocks/footer6/components/icons/apple-icon.tsx +18 -0
  140. package/registry/default/blocks/footer6/components/icons/facebook-icon.tsx +12 -0
  141. package/registry/default/blocks/footer6/components/icons/github-icon.tsx +10 -0
  142. package/registry/default/blocks/footer6/components/icons/google-play-icon.tsx +10 -0
  143. package/registry/default/blocks/footer6/components/icons/instagram-icon.tsx +12 -0
  144. package/registry/default/blocks/footer6/components/icons/linkedin-icon.tsx +12 -0
  145. package/registry/default/blocks/footer6/components/icons/x-icon.tsx +12 -0
  146. package/registry/default/blocks/footer6/components/logo.tsx +88 -0
  147. package/registry/default/blocks/header1/app/page.tsx +12 -0
  148. package/registry/default/blocks/header1/components/demo-layout.tsx +33 -0
  149. package/registry/default/blocks/header1/components/header.tsx +58 -0
  150. package/registry/default/blocks/header1/components/logo.tsx +88 -0
  151. package/registry/default/blocks/header1/components/mobile-nav.tsx +61 -0
  152. package/registry/default/blocks/header1/components/ui/portal.tsx +27 -0
  153. package/registry/default/blocks/header1/hooks/use-scroll.ts +54 -0
  154. package/registry/default/blocks/header2/app/page.tsx +11 -0
  155. package/registry/default/blocks/header2/components/demo-layout.tsx +33 -0
  156. package/registry/default/blocks/header2/components/header.tsx +70 -0
  157. package/registry/default/blocks/header2/components/logo.tsx +88 -0
  158. package/registry/default/blocks/header2/components/mobile-nav.tsx +61 -0
  159. package/registry/default/blocks/header2/components/ui/portal.tsx +27 -0
  160. package/registry/default/blocks/header2/hooks/use-scroll.ts +54 -0
  161. package/registry/default/blocks/header3/app/page.tsx +11 -0
  162. package/registry/default/blocks/header3/components/demo-layout.tsx +33 -0
  163. package/registry/default/blocks/header3/components/desktop-nav.tsx +70 -0
  164. package/registry/default/blocks/header3/components/header.tsx +41 -0
  165. package/registry/default/blocks/header3/components/logo.tsx +88 -0
  166. package/registry/default/blocks/header3/components/mobile-nav.tsx +88 -0
  167. package/registry/default/blocks/header3/components/nav-links.tsx +132 -0
  168. package/registry/default/blocks/header3/components/sheard.tsx +41 -0
  169. package/registry/default/blocks/header3/components/ui/navigation-menu.tsx +171 -0
  170. package/registry/default/blocks/header3/components/ui/portal.tsx +27 -0
  171. package/registry/default/blocks/header3/hooks/use-scroll.ts +54 -0
  172. package/registry/default/blocks/hero1/app/page.tsx +15 -0
  173. package/registry/default/blocks/hero1/components/header.tsx +70 -0
  174. package/registry/default/blocks/hero1/components/hero.tsx +80 -0
  175. package/registry/default/blocks/hero1/components/infinite-slider.tsx +109 -0
  176. package/registry/default/blocks/hero1/components/logo-cloud.tsx +69 -0
  177. package/registry/default/blocks/hero1/components/logo.tsx +88 -0
  178. package/registry/default/blocks/hero1/components/logos/claude-wordmark.svg +1 -0
  179. package/registry/default/blocks/hero1/components/logos/clerk-wordmark.svg +1 -0
  180. package/registry/default/blocks/hero1/components/logos/github-wordmark.svg +6 -0
  181. package/registry/default/blocks/hero1/components/logos/nvidia-wordmark.svg +1 -0
  182. package/registry/default/blocks/hero1/components/logos/openai-wordmark.svg +1 -0
  183. package/registry/default/blocks/hero1/components/logos/supabase-wordmark.svg +23 -0
  184. package/registry/default/blocks/hero1/components/logos/turso-wordmark.svg +1 -0
  185. package/registry/default/blocks/hero1/components/logos/vercel-wordmark.svg +1 -0
  186. package/registry/default/blocks/hero1/components/logos-section.tsx +14 -0
  187. package/registry/default/blocks/hero1/components/mobile-nav.tsx +61 -0
  188. package/registry/default/blocks/hero1/components/ui/portal.tsx +27 -0
  189. package/registry/default/blocks/hero1/hooks/use-scroll.ts +54 -0
  190. package/registry/default/blocks/hero2/app/page.tsx +23 -0
  191. package/registry/default/blocks/hero2/components/decor-icon.tsx +45 -0
  192. package/registry/default/blocks/hero2/components/full-width-divider.tsx +21 -0
  193. package/registry/default/blocks/hero2/components/header.tsx +70 -0
  194. package/registry/default/blocks/hero2/components/hero.tsx +104 -0
  195. package/registry/default/blocks/hero2/components/infinite-slider.tsx +109 -0
  196. package/registry/default/blocks/hero2/components/logo-cloud.tsx +120 -0
  197. package/registry/default/blocks/hero2/components/logo.tsx +88 -0
  198. package/registry/default/blocks/hero2/components/logos/claude-wordmark.svg +1 -0
  199. package/registry/default/blocks/hero2/components/logos/clerk-wordmark.svg +1 -0
  200. package/registry/default/blocks/hero2/components/logos/github-wordmark.svg +6 -0
  201. package/registry/default/blocks/hero2/components/logos/nvidia-wordmark.svg +1 -0
  202. package/registry/default/blocks/hero2/components/logos/openai-wordmark.svg +1 -0
  203. package/registry/default/blocks/hero2/components/logos/supabase-wordmark.svg +23 -0
  204. package/registry/default/blocks/hero2/components/logos/turso-wordmark.svg +1 -0
  205. package/registry/default/blocks/hero2/components/logos/vercel-wordmark.svg +1 -0
  206. package/registry/default/blocks/hero2/components/logos-section.tsx +23 -0
  207. package/registry/default/blocks/hero2/components/mobile-nav.tsx +61 -0
  208. package/registry/default/blocks/hero2/components/ui/portal.tsx +27 -0
  209. package/registry/default/blocks/hero2/hooks/use-scroll.ts +54 -0
  210. package/registry/default/blocks/hero3/app/page.tsx +15 -0
  211. package/registry/default/blocks/hero3/components/header.tsx +70 -0
  212. package/registry/default/blocks/hero3/components/hero.tsx +104 -0
  213. package/registry/default/blocks/hero3/components/infinite-slider.tsx +109 -0
  214. package/registry/default/blocks/hero3/components/logo-cloud.tsx +67 -0
  215. package/registry/default/blocks/hero3/components/logo.tsx +88 -0
  216. package/registry/default/blocks/hero3/components/logos/claude-wordmark.svg +1 -0
  217. package/registry/default/blocks/hero3/components/logos/clerk-wordmark.svg +1 -0
  218. package/registry/default/blocks/hero3/components/logos/github-wordmark.svg +6 -0
  219. package/registry/default/blocks/hero3/components/logos/nvidia-wordmark.svg +1 -0
  220. package/registry/default/blocks/hero3/components/logos/openai-wordmark.svg +1 -0
  221. package/registry/default/blocks/hero3/components/logos/supabase-wordmark.svg +23 -0
  222. package/registry/default/blocks/hero3/components/logos/turso-wordmark.svg +1 -0
  223. package/registry/default/blocks/hero3/components/logos/vercel-wordmark.svg +1 -0
  224. package/registry/default/blocks/hero3/components/logos-section.tsx +12 -0
  225. package/registry/default/blocks/hero3/components/mobile-nav.tsx +61 -0
  226. package/registry/default/blocks/hero3/components/ui/portal.tsx +27 -0
  227. package/registry/default/blocks/hero3/hooks/use-scroll.ts +54 -0
  228. package/registry/default/blocks/image-gallery-1/app/page.tsx +5 -0
  229. package/registry/default/blocks/image-gallery-1/components/aspect-ratio.tsx +22 -0
  230. package/registry/default/blocks/image-gallery-1/components/image-gallery.tsx +135 -0
  231. package/registry/default/blocks/image-gallery-1/components/lazy-image.tsx +94 -0
  232. package/registry/default/blocks/integrations1/app/page.tsx +9 -0
  233. package/registry/default/blocks/integrations1/components/integrations.tsx +86 -0
  234. package/registry/default/blocks/integrations1/components/logos/adobe.svg +1 -0
  235. package/registry/default/blocks/integrations1/components/logos/canva.svg +1 -0
  236. package/registry/default/blocks/integrations1/components/logos/cursor.svg +1 -0
  237. package/registry/default/blocks/integrations1/components/logos/gmail.svg +1 -0
  238. package/registry/default/blocks/integrations1/components/logos/notion.svg +1 -0
  239. package/registry/default/blocks/integrations1/components/logos/planetscale.svg +1 -0
  240. package/registry/default/blocks/integrations1/components/logos/polar.svg +1 -0
  241. package/registry/default/blocks/integrations1/components/logos/supabase.svg +1 -0
  242. package/registry/default/blocks/integrations1/components/logos/vercel.svg +1 -0
  243. package/registry/default/blocks/integrations2/app/page.tsx +9 -0
  244. package/registry/default/blocks/integrations2/components/decor-icon.tsx +45 -0
  245. package/registry/default/blocks/integrations2/components/integrations.tsx +118 -0
  246. package/registry/default/blocks/integrations2/components/logos/adobe.svg +1 -0
  247. package/registry/default/blocks/integrations2/components/logos/canva.svg +1 -0
  248. package/registry/default/blocks/integrations2/components/logos/cursor.svg +1 -0
  249. package/registry/default/blocks/integrations2/components/logos/gmail.svg +1 -0
  250. package/registry/default/blocks/integrations2/components/logos/notion.svg +1 -0
  251. package/registry/default/blocks/integrations2/components/logos/planetscale.svg +1 -0
  252. package/registry/default/blocks/integrations2/components/logos/polar.svg +1 -0
  253. package/registry/default/blocks/integrations2/components/logos/supabase.svg +1 -0
  254. package/registry/default/blocks/integrations2/components/logos/vercel.svg +1 -0
  255. package/registry/default/blocks/integrations3/app/page.tsx +9 -0
  256. package/registry/default/blocks/integrations3/components/full-width-divider.tsx +33 -0
  257. package/registry/default/blocks/integrations3/components/integrations.tsx +190 -0
  258. package/registry/default/blocks/integrations3/components/logos/adobe.svg +1 -0
  259. package/registry/default/blocks/integrations3/components/logos/canva.svg +1 -0
  260. package/registry/default/blocks/integrations3/components/logos/cursor.svg +1 -0
  261. package/registry/default/blocks/integrations3/components/logos/gmail.svg +1 -0
  262. package/registry/default/blocks/integrations3/components/logos/notion.svg +1 -0
  263. package/registry/default/blocks/integrations3/components/logos/planetscale.svg +1 -0
  264. package/registry/default/blocks/integrations3/components/logos/polar.svg +1 -0
  265. package/registry/default/blocks/integrations3/components/logos/supabase.svg +1 -0
  266. package/registry/default/blocks/integrations3/components/logos/vercel.svg +1 -0
  267. package/registry/default/blocks/integrations4/app/page.tsx +9 -0
  268. package/registry/default/blocks/integrations4/components/integrations.tsx +177 -0
  269. package/registry/default/blocks/integrations4/components/logos/adobe.svg +1 -0
  270. package/registry/default/blocks/integrations4/components/logos/canva.svg +1 -0
  271. package/registry/default/blocks/integrations4/components/logos/cursor.svg +1 -0
  272. package/registry/default/blocks/integrations4/components/logos/gmail.svg +1 -0
  273. package/registry/default/blocks/integrations4/components/logos/notion.svg +1 -0
  274. package/registry/default/blocks/integrations4/components/logos/planetscale.svg +1 -0
  275. package/registry/default/blocks/integrations4/components/logos/polar.svg +1 -0
  276. package/registry/default/blocks/integrations4/components/logos/supabase.svg +1 -0
  277. package/registry/default/blocks/integrations4/components/logos/vercel.svg +1 -0
  278. package/registry/default/blocks/integrations5/app/page.tsx +9 -0
  279. package/registry/default/blocks/integrations5/components/integrations.tsx +112 -0
  280. package/registry/default/blocks/integrations5/components/logos/adobe.svg +1 -0
  281. package/registry/default/blocks/integrations5/components/logos/canva.svg +1 -0
  282. package/registry/default/blocks/integrations5/components/logos/cursor.svg +1 -0
  283. package/registry/default/blocks/integrations5/components/logos/gmail.svg +1 -0
  284. package/registry/default/blocks/integrations5/components/logos/notion.svg +1 -0
  285. package/registry/default/blocks/integrations5/components/logos/planetscale.svg +1 -0
  286. package/registry/default/blocks/integrations5/components/logos/polar.svg +1 -0
  287. package/registry/default/blocks/integrations5/components/logos/supabase.svg +1 -0
  288. package/registry/default/blocks/integrations5/components/logos/vercel.svg +1 -0
  289. package/registry/default/blocks/logo-cloud-1/app/page.tsx +17 -0
  290. package/registry/default/blocks/logo-cloud-1/components/logo-cloud.tsx +70 -0
  291. package/registry/default/blocks/logo-cloud-1/components/logos/claude-wordmark.svg +1 -0
  292. package/registry/default/blocks/logo-cloud-1/components/logos/clerk-wordmark.svg +1 -0
  293. package/registry/default/blocks/logo-cloud-1/components/logos/github-wordmark.svg +6 -0
  294. package/registry/default/blocks/logo-cloud-1/components/logos/nvidia-wordmark.svg +1 -0
  295. package/registry/default/blocks/logo-cloud-1/components/logos/openai-wordmark.svg +1 -0
  296. package/registry/default/blocks/logo-cloud-1/components/logos/supabase-wordmark.svg +23 -0
  297. package/registry/default/blocks/logo-cloud-1/components/logos/turso-wordmark.svg +1 -0
  298. package/registry/default/blocks/logo-cloud-1/components/logos/vercel-wordmark.svg +1 -0
  299. package/registry/default/blocks/logo-cloud-2/app/page.tsx +19 -0
  300. package/registry/default/blocks/logo-cloud-2/components/decor-icon.tsx +45 -0
  301. package/registry/default/blocks/logo-cloud-2/components/logo-cloud.tsx +120 -0
  302. package/registry/default/blocks/logo-cloud-2/components/logos/claude-wordmark.svg +1 -0
  303. package/registry/default/blocks/logo-cloud-2/components/logos/clerk-wordmark.svg +1 -0
  304. package/registry/default/blocks/logo-cloud-2/components/logos/github-wordmark.svg +6 -0
  305. package/registry/default/blocks/logo-cloud-2/components/logos/nvidia-wordmark.svg +1 -0
  306. package/registry/default/blocks/logo-cloud-2/components/logos/openai-wordmark.svg +1 -0
  307. package/registry/default/blocks/logo-cloud-2/components/logos/supabase-wordmark.svg +23 -0
  308. package/registry/default/blocks/logo-cloud-2/components/logos/turso-wordmark.svg +1 -0
  309. package/registry/default/blocks/logo-cloud-2/components/logos/vercel-wordmark.svg +1 -0
  310. package/registry/default/blocks/logo-cloud-3/app/page.tsx +18 -0
  311. package/registry/default/blocks/logo-cloud-3/components/infinite-slider.tsx +109 -0
  312. package/registry/default/blocks/logo-cloud-3/components/logo-cloud.tsx +69 -0
  313. package/registry/default/blocks/logo-cloud-3/components/logos/claude-wordmark.svg +1 -0
  314. package/registry/default/blocks/logo-cloud-3/components/logos/clerk-wordmark.svg +1 -0
  315. package/registry/default/blocks/logo-cloud-3/components/logos/github-wordmark.svg +6 -0
  316. package/registry/default/blocks/logo-cloud-3/components/logos/nvidia-wordmark.svg +1 -0
  317. package/registry/default/blocks/logo-cloud-3/components/logos/openai-wordmark.svg +1 -0
  318. package/registry/default/blocks/logo-cloud-3/components/logos/supabase-wordmark.svg +23 -0
  319. package/registry/default/blocks/logo-cloud-3/components/logos/turso-wordmark.svg +1 -0
  320. package/registry/default/blocks/logo-cloud-3/components/logos/vercel-wordmark.svg +1 -0
  321. package/registry/default/blocks/logo-cloud-4/app/page.tsx +23 -0
  322. package/registry/default/blocks/logo-cloud-4/components/infinite-slider.tsx +109 -0
  323. package/registry/default/blocks/logo-cloud-4/components/logo-cloud.tsx +83 -0
  324. package/registry/default/blocks/logo-cloud-4/components/logos/claude-wordmark.svg +1 -0
  325. package/registry/default/blocks/logo-cloud-4/components/logos/clerk-wordmark.svg +1 -0
  326. package/registry/default/blocks/logo-cloud-4/components/logos/github-wordmark.svg +6 -0
  327. package/registry/default/blocks/logo-cloud-4/components/logos/nvidia-wordmark.svg +1 -0
  328. package/registry/default/blocks/logo-cloud-4/components/logos/openai-wordmark.svg +1 -0
  329. package/registry/default/blocks/logo-cloud-4/components/logos/supabase-wordmark.svg +23 -0
  330. package/registry/default/blocks/logo-cloud-4/components/logos/turso-wordmark.svg +1 -0
  331. package/registry/default/blocks/logo-cloud-4/components/logos/vercel-wordmark.svg +1 -0
  332. package/registry/default/blocks/logo-cloud-4/components/progressive-blur.tsx +63 -0
  333. package/registry/default/blocks/logo-cloud-5/app/page.tsx +17 -0
  334. package/registry/default/blocks/logo-cloud-5/components/logo-cloud.tsx +67 -0
  335. package/registry/default/blocks/logo-cloud-5/components/logos/claude-wordmark.svg +1 -0
  336. package/registry/default/blocks/logo-cloud-5/components/logos/clerk-wordmark.svg +1 -0
  337. package/registry/default/blocks/logo-cloud-5/components/logos/github-wordmark.svg +6 -0
  338. package/registry/default/blocks/logo-cloud-5/components/logos/nvidia-wordmark.svg +1 -0
  339. package/registry/default/blocks/logo-cloud-5/components/logos/openai-wordmark.svg +1 -0
  340. package/registry/default/blocks/logo-cloud-5/components/logos/supabase-wordmark.svg +23 -0
  341. package/registry/default/blocks/logo-cloud-5/components/logos/turso-wordmark.svg +1 -0
  342. package/registry/default/blocks/logo-cloud-5/components/logos/vercel-wordmark.svg +1 -0
  343. package/registry/default/blocks/pricing1/app/page.tsx +9 -0
  344. package/registry/default/blocks/pricing1/components/decor-icon.tsx +45 -0
  345. package/registry/default/blocks/pricing1/components/pricing.tsx +94 -0
  346. package/registry/default/blocks/pricing2/app/page.tsx +9 -0
  347. package/registry/default/blocks/pricing2/components/full-width-divider.tsx +33 -0
  348. package/registry/default/blocks/pricing2/components/pricing.tsx +117 -0
  349. package/registry/default/blocks/pricing3/app/page.tsx +9 -0
  350. package/registry/default/blocks/pricing3/components/pricing-card.tsx +171 -0
  351. package/registry/default/blocks/pricing3/components/pricing.tsx +143 -0
  352. package/registry/default/blocks/pricing4/app/page.tsx +9 -0
  353. package/registry/default/blocks/pricing4/components/frequency-toggle.tsx +47 -0
  354. package/registry/default/blocks/pricing4/components/pricing.tsx +230 -0
  355. package/registry/default/blocks/testimonials1/app/page.tsx +9 -0
  356. package/registry/default/blocks/testimonials1/components/logo.tsx +74 -0
  357. package/registry/default/blocks/testimonials1/components/testimonials.tsx +41 -0
  358. package/registry/default/blocks/testimonials2/app/page.tsx +9 -0
  359. package/registry/default/blocks/testimonials2/components/testimonials.tsx +65 -0
  360. package/registry/default/blocks/testimonials3/app/page.tsx +9 -0
  361. package/registry/default/blocks/testimonials3/components/decor-icon.tsx +45 -0
  362. package/registry/default/blocks/testimonials3/components/testimonials.tsx +114 -0
  363. package/registry/default/blocks/testimonials4/app/page.tsx +9 -0
  364. package/registry/default/blocks/testimonials4/components/full-width-divider.tsx +33 -0
  365. package/registry/default/blocks/testimonials4/components/testimonials.tsx +81 -0
  366. package/registry/default/blocks/testimonials5/app/page.tsx +9 -0
  367. package/registry/default/blocks/testimonials5/components/full-width-divider.tsx +33 -0
  368. package/registry/default/blocks/testimonials5/components/grid-filler.tsx +74 -0
  369. package/registry/default/blocks/testimonials5/components/grid-pattern.tsx +70 -0
  370. package/registry/default/blocks/testimonials5/components/testimonials.tsx +186 -0
  371. package/registry/default/blocks/testimonials6/app/page.tsx +9 -0
  372. package/registry/default/blocks/testimonials6/components/infinite-slider.tsx +109 -0
  373. package/registry/default/blocks/testimonials6/components/testimonials.tsx +193 -0
  374. package/registry/default/examples/accordion-disabled.tsx +58 -0
  375. package/registry/default/examples/accordion-in-card.tsx +92 -0
  376. package/registry/default/examples/accordion-leading-icon.tsx +51 -0
  377. package/registry/default/examples/accordion-user-roles.tsx +97 -0
  378. package/registry/default/examples/accordion-with-icons.tsx +67 -0
  379. package/registry/default/examples/avatar-badge-icons.tsx +60 -0
  380. package/registry/default/examples/avatar-badge-position.tsx +47 -0
  381. package/registry/default/examples/avatar-empty-collaborators.tsx +55 -0
  382. package/registry/default/examples/avatar-group-trust.tsx +49 -0
  383. package/registry/default/examples/avatar-loading.tsx +33 -0
  384. package/registry/default/examples/avatar-menu.tsx +81 -0
  385. package/registry/default/examples/avatar-profile-badge.tsx +30 -0
  386. package/registry/default/examples/avatar-status.tsx +47 -0
  387. package/registry/default/examples/breadcrumb-bullet-separator.tsx +38 -0
  388. package/registry/default/examples/breadcrumb-buttons.tsx +61 -0
  389. package/registry/default/examples/breadcrumb-card.tsx +40 -0
  390. package/registry/default/examples/button-default-icons.tsx +18 -0
  391. package/registry/default/examples/button-default.tsx +5 -0
  392. package/registry/default/examples/button-demo.tsx +11 -1
  393. package/registry/default/examples/button-destructive-icons.tsx +18 -0
  394. package/registry/default/examples/button-destructive-outline-icons.tsx +18 -0
  395. package/registry/default/examples/button-ghost-icons.tsx +18 -0
  396. package/registry/default/examples/button-link-icons.tsx +18 -0
  397. package/registry/default/examples/button-outline-icons.tsx +18 -0
  398. package/registry/default/examples/button-secondary-icons.tsx +18 -0
  399. package/registry/default/examples/button-theme-toggle.tsx +38 -0
  400. package/registry/default/examples/card-author-profile.tsx +66 -0
  401. package/registry/default/examples/card-default-size.tsx +33 -0
  402. package/registry/default/examples/card-depth.tsx +37 -0
  403. package/registry/default/examples/card-help-link.tsx +32 -0
  404. package/registry/default/examples/card-help-menu.tsx +78 -0
  405. package/registry/default/examples/card-image-centered.tsx +38 -0
  406. package/registry/default/examples/card-image-feature.tsx +44 -0
  407. package/registry/default/examples/card-metric-actions.tsx +102 -0
  408. package/registry/default/examples/card-resource-link.tsx +40 -0
  409. package/registry/default/examples/card-team-member.tsx +38 -14
  410. package/registry/default/examples/card-usage-expandable.tsx +98 -0
  411. package/registry/default/examples/card-with-borders.tsx +29 -0
  412. package/registry/default/examples/code-block-shared.tsx +8 -1
  413. package/registry/default/ui/accordion.tsx +82 -2
  414. package/registry/default/ui/avatar.tsx +45 -1
  415. package/registry/default/ui/form.tsx +6 -1
  416. package/registry/default/ui/input-group.tsx +158 -0
  417. package/registry/default/ui/toast-gooey-icons.tsx +68 -0
  418. package/registry/default/ui/toast-gooey-renderer.tsx +614 -0
  419. package/registry/default/ui/toast-gooey-types.ts +45 -0
  420. package/registry/default/ui/toast-gooey.css +511 -0
  421. package/registry/default/ui/toast-gooey.tsx +445 -0
  422. package/registry/default/ui/toast.tsx +1 -1
  423. package/skills/loveui-skills/SKILL.md +170 -0
  424. package/skills/loveui-skills/references/accessibility-baseline.md +32 -0
  425. package/skills/loveui-skills/references/component-api-and-naming.md +30 -0
  426. package/skills/loveui-skills/references/content-ux-writing.md +33 -0
  427. package/skills/loveui-skills/references/design-directions.md +60 -0
  428. package/skills/loveui-skills/references/forms-and-validation.md +30 -0
  429. package/skills/loveui-skills/references/frontend-architecture.md +30 -0
  430. package/skills/loveui-skills/references/interaction-heuristics.md +45 -0
  431. package/skills/loveui-skills/references/mcp-catalog-workflow.md +68 -0
  432. package/skills/loveui-skills/references/motion-and-feedback.md +31 -0
  433. package/skills/loveui-skills/references/navigation-and-information-architecture.md +30 -0
  434. package/skills/loveui-skills/references/page-blueprints.md +76 -0
  435. package/skills/loveui-skills/references/quality-gates.md +51 -0
  436. package/skills/loveui-skills/references/screenshot-translation-protocol.md +52 -0
  437. package/skills/loveui-skills/references/structural-cleanliness.md +37 -0
  438. package/skills/loveui-skills/references/testing-and-quality-strategy.md +33 -0
  439. package/skills/loveui-skills/references/visual-primitives.md +42 -0
  440. package/skills/loveui-skills/skills/adapt/SKILL.md +199 -0
  441. package/skills/loveui-skills/skills/animate/SKILL.md +190 -0
  442. package/skills/loveui-skills/skills/audit/SKILL.md +127 -0
  443. package/skills/loveui-skills/skills/bolder/SKILL.md +132 -0
  444. package/skills/loveui-skills/skills/clarify/SKILL.md +180 -0
  445. package/skills/loveui-skills/skills/colorize/SKILL.md +158 -0
  446. package/skills/loveui-skills/skills/critique/SKILL.md +118 -0
  447. package/skills/loveui-skills/skills/delight/SKILL.md +317 -0
  448. package/skills/loveui-skills/skills/distill/SKILL.md +137 -0
  449. package/skills/loveui-skills/skills/extract/SKILL.md +95 -0
  450. package/skills/loveui-skills/skills/frontend-design/SKILL.md +127 -0
  451. package/skills/loveui-skills/skills/frontend-design/reference/color-and-contrast.md +132 -0
  452. package/skills/loveui-skills/skills/frontend-design/reference/interaction-design.md +123 -0
  453. package/skills/loveui-skills/skills/frontend-design/reference/motion-design.md +99 -0
  454. package/skills/loveui-skills/skills/frontend-design/reference/responsive-design.md +114 -0
  455. package/skills/loveui-skills/skills/frontend-design/reference/spatial-design.md +100 -0
  456. package/skills/loveui-skills/skills/frontend-design/reference/typography.md +131 -0
  457. package/skills/loveui-skills/skills/frontend-design/reference/ux-writing.md +107 -0
  458. package/skills/loveui-skills/skills/harden/SKILL.md +358 -0
  459. package/skills/loveui-skills/skills/normalize/SKILL.md +67 -0
  460. package/skills/loveui-skills/skills/onboard/SKILL.md +243 -0
  461. package/skills/loveui-skills/skills/optimize/SKILL.md +269 -0
  462. package/skills/loveui-skills/skills/polish/SKILL.md +202 -0
  463. package/skills/loveui-skills/skills/quieter/SKILL.md +118 -0
  464. package/skills/loveui-skills/skills/teach-loveui/SKILL.md +69 -0
@@ -0,0 +1,199 @@
1
+ ---
2
+ name: adapt
3
+ description: Adapt designs to work across different screen sizes, devices, contexts, or platforms. Ensures consistent experience across varied environments.
4
+ args:
5
+ - name: target
6
+ description: The feature or component to adapt (optional)
7
+ required: false
8
+ - name: context
9
+ description: What to adapt for (mobile, tablet, desktop, print, email, etc.)
10
+ required: false
11
+ user-invokable: true
12
+ ---
13
+
14
+ Adapt existing designs to work effectively across different contexts - different screen sizes, devices, platforms, or use cases.
15
+
16
+ ## Assess Adaptation Challenge
17
+
18
+ Understand what needs adaptation and why:
19
+
20
+ 1. **Identify the source context**:
21
+ - What was it designed for originally? (Desktop web? Mobile app?)
22
+ - What assumptions were made? (Large screen? Mouse input? Fast connection?)
23
+ - What works well in current context?
24
+
25
+ 2. **Understand target context**:
26
+ - **Device**: Mobile, tablet, desktop, TV, watch, print?
27
+ - **Input method**: Touch, mouse, keyboard, voice, gamepad?
28
+ - **Screen constraints**: Size, resolution, orientation?
29
+ - **Connection**: Fast wifi, slow 3G, offline?
30
+ - **Usage context**: On-the-go vs desk, quick glance vs focused reading?
31
+ - **User expectations**: What do users expect on this platform?
32
+
33
+ 3. **Identify adaptation challenges**:
34
+ - What won't fit? (Content, navigation, features)
35
+ - What won't work? (Hover states on touch, tiny touch targets)
36
+ - What's inappropriate? (Desktop patterns on mobile, mobile patterns on desktop)
37
+
38
+ **CRITICAL**: Adaptation is not just scaling - it's rethinking the experience for the new context.
39
+
40
+ ## Plan Adaptation Strategy
41
+
42
+ Create context-appropriate strategy:
43
+
44
+ ### Mobile Adaptation (Desktop → Mobile)
45
+
46
+ **Layout Strategy**:
47
+ - Single column instead of multi-column
48
+ - Vertical stacking instead of side-by-side
49
+ - Full-width components instead of fixed widths
50
+ - Bottom navigation instead of top/side navigation
51
+
52
+ **Interaction Strategy**:
53
+ - Touch targets 44x44px minimum (not hover-dependent)
54
+ - Swipe gestures where appropriate (lists, carousels)
55
+ - Bottom sheets instead of dropdowns
56
+ - Thumbs-first design (controls within thumb reach)
57
+ - Larger tap areas with more spacing
58
+
59
+ **Content Strategy**:
60
+ - Progressive disclosure (don't show everything at once)
61
+ - Prioritize primary content (secondary content in tabs/accordions)
62
+ - Shorter text (more concise)
63
+ - Larger text (16px minimum)
64
+
65
+ **Navigation Strategy**:
66
+ - Hamburger menu or bottom navigation
67
+ - Reduce navigation complexity
68
+ - Sticky headers for context
69
+ - Back button in navigation flow
70
+
71
+ ### Tablet Adaptation (Hybrid Approach)
72
+
73
+ **Layout Strategy**:
74
+ - Two-column layouts (not single or three-column)
75
+ - Side panels for secondary content
76
+ - Master-detail views (list + detail)
77
+ - Adaptive based on orientation (portrait vs landscape)
78
+
79
+ **Interaction Strategy**:
80
+ - Support both touch and pointer
81
+ - Touch targets 44x44px but allow denser layouts than phone
82
+ - Side navigation drawers
83
+ - Multi-column forms where appropriate
84
+
85
+ ### Desktop Adaptation (Mobile → Desktop)
86
+
87
+ **Layout Strategy**:
88
+ - Multi-column layouts (use horizontal space)
89
+ - Side navigation always visible
90
+ - Multiple information panels simultaneously
91
+ - Fixed widths with max-width constraints (don't stretch to 4K)
92
+
93
+ **Interaction Strategy**:
94
+ - Hover states for additional information
95
+ - Keyboard shortcuts
96
+ - Right-click context menus
97
+ - Drag and drop where helpful
98
+ - Multi-select with Shift/Cmd
99
+
100
+ **Content Strategy**:
101
+ - Show more information upfront (less progressive disclosure)
102
+ - Data tables with many columns
103
+ - Richer visualizations
104
+ - More detailed descriptions
105
+
106
+ ### Print Adaptation (Screen → Print)
107
+
108
+ **Layout Strategy**:
109
+ - Page breaks at logical points
110
+ - Remove navigation, footer, interactive elements
111
+ - Black and white (or limited color)
112
+ - Proper margins for binding
113
+
114
+ **Content Strategy**:
115
+ - Expand shortened content (show full URLs, hidden sections)
116
+ - Add page numbers, headers, footers
117
+ - Include metadata (print date, page title)
118
+ - Convert charts to print-friendly versions
119
+
120
+ ### Email Adaptation (Web → Email)
121
+
122
+ **Layout Strategy**:
123
+ - Narrow width (600px max)
124
+ - Single column only
125
+ - Inline CSS (no external stylesheets)
126
+ - Table-based layouts (for email client compatibility)
127
+
128
+ **Interaction Strategy**:
129
+ - Large, obvious CTAs (buttons not text links)
130
+ - No hover states (not reliable)
131
+ - Deep links to web app for complex interactions
132
+
133
+ ## Implement Adaptations
134
+
135
+ Apply changes systematically:
136
+
137
+ ### Responsive Breakpoints
138
+
139
+ Choose appropriate breakpoints:
140
+ - Mobile: 320px-767px
141
+ - Tablet: 768px-1023px
142
+ - Desktop: 1024px+
143
+ - Or content-driven breakpoints (where design breaks)
144
+
145
+ ### Layout Adaptation Techniques
146
+
147
+ - **CSS Grid/Flexbox**: Reflow layouts automatically
148
+ - **Container Queries**: Adapt based on container, not viewport
149
+ - **`clamp()`**: Fluid sizing between min and max
150
+ - **Media queries**: Different styles for different contexts
151
+ - **Display properties**: Show/hide elements per context
152
+
153
+ ### Touch Adaptation
154
+
155
+ - Increase touch target sizes (44x44px minimum)
156
+ - Add more spacing between interactive elements
157
+ - Remove hover-dependent interactions
158
+ - Add touch feedback (ripples, highlights)
159
+ - Consider thumb zones (easier to reach bottom than top)
160
+
161
+ ### Content Adaptation
162
+
163
+ - Use `display: none` sparingly (still downloads)
164
+ - Progressive enhancement (core content first, enhancements on larger screens)
165
+ - Lazy loading for off-screen content
166
+ - Responsive images (`srcset`, `picture` element)
167
+
168
+ ### Navigation Adaptation
169
+
170
+ - Transform complex nav to hamburger/drawer on mobile
171
+ - Bottom nav bar for mobile apps
172
+ - Persistent side navigation on desktop
173
+ - Breadcrumbs on smaller screens for context
174
+
175
+ **IMPORTANT**: Test on real devices, not just browser DevTools. Device emulation is helpful but not perfect.
176
+
177
+ **NEVER**:
178
+ - Hide core functionality on mobile (if it matters, make it work)
179
+ - Assume desktop = powerful device (consider accessibility, older machines)
180
+ - Use different information architecture across contexts (confusing)
181
+ - Break user expectations for platform (mobile users expect mobile patterns)
182
+ - Forget landscape orientation on mobile/tablet
183
+ - Use generic breakpoints blindly (use content-driven breakpoints)
184
+ - Ignore touch on desktop (many desktop devices have touch)
185
+
186
+ ## Verify Adaptations
187
+
188
+ Test thoroughly across contexts:
189
+
190
+ - **Real devices**: Test on actual phones, tablets, desktops
191
+ - **Different orientations**: Portrait and landscape
192
+ - **Different browsers**: Safari, Chrome, Firefox, Edge
193
+ - **Different OS**: iOS, Android, Windows, macOS
194
+ - **Different input methods**: Touch, mouse, keyboard
195
+ - **Edge cases**: Very small screens (320px), very large screens (4K)
196
+ - **Slow connections**: Test on throttled network
197
+
198
+ Remember: You're a cross-platform design expert. Make experiences that feel native to each context while maintaining brand and functionality consistency. Adapt intentionally, test thoroughly.
199
+
@@ -0,0 +1,190 @@
1
+ ---
2
+ name: animate
3
+ description: Review a feature and enhance it with purposeful animations, micro-interactions, and motion effects that improve usability and delight.
4
+ args:
5
+ - name: target
6
+ description: The feature or component to animate (optional)
7
+ required: false
8
+ user-invokable: true
9
+ ---
10
+
11
+ Analyze a feature and strategically add animations and micro-interactions that enhance understanding, provide feedback, and create delight.
12
+
13
+ ## MANDATORY PREPARATION
14
+
15
+ ### Context Gathering (Do This First)
16
+
17
+ You cannot do a great job without having necessary context, such as target audience (critical), desired use-cases (critical), brand personality/tone (playful vs serious, energetic vs calm), and performance constraints.
18
+
19
+ Attempt to gather these from the current thread or codebase.
20
+
21
+ 1. If you don't find *exact* information and have to infer from existing design and functionality, you MUST STOP and {{ask_instruction}} whether you got it right.
22
+ 2. Otherwise, if you can't fully infer or your level of confidence is medium or lower, you MUST {{ask_instruction}} clarifying questions first to complete your context.
23
+
24
+ Do NOT proceed until you have answers. Guessing leads to inappropriate or excessive animation.
25
+
26
+ ### Use frontend-design skill
27
+
28
+ Use the frontend-design skill for design principles and anti-patterns. Do NOT proceed until it has executed and you know all DO's and DON'Ts.
29
+
30
+ ---
31
+
32
+ ## Assess Animation Opportunities
33
+
34
+ Analyze where motion would improve the experience:
35
+
36
+ 1. **Identify static areas**:
37
+ - **Missing feedback**: Actions without visual acknowledgment (button clicks, form submission, etc.)
38
+ - **Jarring transitions**: Instant state changes that feel abrupt (show/hide, page loads, route changes)
39
+ - **Unclear relationships**: Spatial or hierarchical relationships that aren't obvious
40
+ - **Lack of delight**: Functional but joyless interactions
41
+ - **Missed guidance**: Opportunities to direct attention or explain behavior
42
+
43
+ 2. **Understand the context**:
44
+ - What's the personality? (Playful vs serious, energetic vs calm)
45
+ - What's the performance budget? (Mobile-first? Complex page?)
46
+ - Who's the audience? (Motion-sensitive users? Power users who want speed?)
47
+ - What matters most? (One hero animation vs many micro-interactions?)
48
+
49
+ If any of these are unclear from the codebase, {{ask_instruction}}
50
+
51
+ **CRITICAL**: Respect `prefers-reduced-motion`. Always provide non-animated alternatives for users who need them.
52
+
53
+ ## Plan Animation Strategy
54
+
55
+ Create a purposeful animation plan:
56
+
57
+ - **Hero moment**: What's the ONE signature animation? (Page load? Hero section? Key interaction?)
58
+ - **Feedback layer**: Which interactions need acknowledgment?
59
+ - **Transition layer**: Which state changes need smoothing?
60
+ - **Delight layer**: Where can we surprise and delight?
61
+
62
+ **IMPORTANT**: One well-orchestrated experience beats scattered animations everywhere. Focus on high-impact moments.
63
+
64
+ ## Implement Animations
65
+
66
+ Add motion systematically across these categories:
67
+
68
+ ### Entrance Animations
69
+ - **Page load choreography**: Stagger element reveals (100-150ms delays), fade + slide combinations
70
+ - **Hero section**: Dramatic entrance for primary content (scale, parallax, or creative effects)
71
+ - **Content reveals**: Scroll-triggered animations using intersection observer
72
+ - **Modal/drawer entry**: Smooth slide + fade, backdrop fade, focus management
73
+
74
+ ### Micro-interactions
75
+ - **Button feedback**:
76
+ - Hover: Subtle scale (1.02-1.05), color shift, shadow increase
77
+ - Click: Quick scale down then up (0.95 → 1), ripple effect
78
+ - Loading: Spinner or pulse state
79
+ - **Form interactions**:
80
+ - Input focus: Border color transition, slight scale or glow
81
+ - Validation: Shake on error, check mark on success, smooth color transitions
82
+ - **Toggle switches**: Smooth slide + color transition (200-300ms)
83
+ - **Checkboxes/radio**: Check mark animation, ripple effect
84
+ - **Like/favorite**: Scale + rotation, particle effects, color transition
85
+
86
+ ### State Transitions
87
+ - **Show/hide**: Fade + slide (not instant), appropriate timing (200-300ms)
88
+ - **Expand/collapse**: Height transition with overflow handling, icon rotation
89
+ - **Loading states**: Skeleton screen fades, spinner animations, progress bars
90
+ - **Success/error**: Color transitions, icon animations, gentle scale pulse
91
+ - **Enable/disable**: Opacity transitions, cursor changes
92
+
93
+ ### Navigation & Flow
94
+ - **Page transitions**: Crossfade between routes, shared element transitions
95
+ - **Tab switching**: Slide indicator, content fade/slide
96
+ - **Carousel/slider**: Smooth transforms, snap points, momentum
97
+ - **Scroll effects**: Parallax layers, sticky headers with state changes, scroll progress indicators
98
+
99
+ ### Feedback & Guidance
100
+ - **Hover hints**: Tooltip fade-ins, cursor changes, element highlights
101
+ - **Drag & drop**: Lift effect (shadow + scale), drop zone highlights, smooth repositioning
102
+ - **Copy/paste**: Brief highlight flash on paste, "copied" confirmation
103
+ - **Focus flow**: Highlight path through form or workflow
104
+
105
+ ### Delight Moments
106
+ - **Empty states**: Subtle floating animations on illustrations
107
+ - **Completed actions**: Confetti, check mark flourish, success celebrations
108
+ - **Easter eggs**: Hidden interactions for discovery
109
+ - **Contextual animation**: Weather effects, time-of-day themes, seasonal touches
110
+
111
+ ## Technical Implementation
112
+
113
+ Use appropriate techniques for each animation:
114
+
115
+ ### Timing & Easing
116
+
117
+ **Durations by purpose:**
118
+ - **100-150ms**: Instant feedback (button press, toggle)
119
+ - **200-300ms**: State changes (hover, menu open)
120
+ - **300-500ms**: Layout changes (accordion, modal)
121
+ - **500-800ms**: Entrance animations (page load)
122
+
123
+ **Easing curves (use these, not CSS defaults):**
124
+ ```css
125
+ /* Recommended - natural deceleration */
126
+ --ease-out-quart: cubic-bezier(0.25, 1, 0.5, 1); /* Smooth, refined */
127
+ --ease-out-quint: cubic-bezier(0.22, 1, 0.36, 1); /* Slightly snappier */
128
+ --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1); /* Confident, decisive */
129
+
130
+ /* AVOID - feel dated and tacky */
131
+ /* bounce: cubic-bezier(0.34, 1.56, 0.64, 1); */
132
+ /* elastic: cubic-bezier(0.68, -0.6, 0.32, 1.6); */
133
+ ```
134
+
135
+ **Exit animations are faster than entrances.** Use ~75% of enter duration.
136
+
137
+ ### CSS Animations
138
+ ```css
139
+ /* Prefer for simple, declarative animations */
140
+ - transitions for state changes
141
+ - @keyframes for complex sequences
142
+ - transform + opacity only (GPU-accelerated)
143
+ ```
144
+
145
+ ### JavaScript Animation
146
+ ```javascript
147
+ /* Use for complex, interactive animations */
148
+ - Web Animations API for programmatic control
149
+ - Framer Motion for React
150
+ - GSAP for complex sequences
151
+ ```
152
+
153
+ ### Performance
154
+ - **GPU acceleration**: Use `transform` and `opacity`, avoid layout properties
155
+ - **will-change**: Add sparingly for known expensive animations
156
+ - **Reduce paint**: Minimize repaints, use `contain` where appropriate
157
+ - **Monitor FPS**: Ensure 60fps on target devices
158
+
159
+ ### Accessibility
160
+ ```css
161
+ @media (prefers-reduced-motion: reduce) {
162
+ * {
163
+ animation-duration: 0.01ms !important;
164
+ animation-iteration-count: 1 !important;
165
+ transition-duration: 0.01ms !important;
166
+ }
167
+ }
168
+ ```
169
+
170
+ **NEVER**:
171
+ - Use bounce or elastic easing curves—they feel dated and draw attention to the animation itself
172
+ - Animate layout properties (width, height, top, left)—use transform instead
173
+ - Use durations over 500ms for feedback—it feels laggy
174
+ - Animate without purpose—every animation needs a reason
175
+ - Ignore `prefers-reduced-motion`—this is an accessibility violation
176
+ - Animate everything—animation fatigue makes interfaces feel exhausting
177
+ - Block interaction during animations unless intentional
178
+
179
+ ## Verify Quality
180
+
181
+ Test animations thoroughly:
182
+
183
+ - **Smooth at 60fps**: No jank on target devices
184
+ - **Feels natural**: Easing curves feel organic, not robotic
185
+ - **Appropriate timing**: Not too fast (jarring) or too slow (laggy)
186
+ - **Reduced motion works**: Animations disabled or simplified appropriately
187
+ - **Doesn't block**: Users can interact during/after animations
188
+ - **Adds value**: Makes interface clearer or more delightful
189
+
190
+ Remember: Motion should enhance understanding and provide feedback, not just add decoration. Animate with purpose, respect performance constraints, and always consider accessibility. Great animation is invisible - it just makes everything feel right.
@@ -0,0 +1,127 @@
1
+ ---
2
+ name: audit
3
+ description: Perform comprehensive audit of interface quality across accessibility, performance, theming, and responsive design. Generates detailed report of issues with severity ratings and recommendations.
4
+ args:
5
+ - name: area
6
+ description: The feature or area to audit (optional)
7
+ required: false
8
+ user-invokable: true
9
+ ---
10
+
11
+ Run systematic quality checks and generate a comprehensive audit report with prioritized issues and actionable recommendations. Don't fix issues - document them for other commands to address.
12
+
13
+ **First**: Use the frontend-design skill for design principles and anti-patterns.
14
+
15
+ ## Diagnostic Scan
16
+
17
+ Run comprehensive checks across multiple dimensions:
18
+
19
+ 1. **Accessibility (A11y)** - Check for:
20
+ - **Contrast issues**: Text contrast ratios < 4.5:1 (or 7:1 for AAA)
21
+ - **Missing ARIA**: Interactive elements without proper roles, labels, or states
22
+ - **Keyboard navigation**: Missing focus indicators, illogical tab order, keyboard traps
23
+ - **Semantic HTML**: Improper heading hierarchy, missing landmarks, divs instead of buttons
24
+ - **Alt text**: Missing or poor image descriptions
25
+ - **Form issues**: Inputs without labels, poor error messaging, missing required indicators
26
+
27
+ 2. **Performance** - Check for:
28
+ - **Layout thrashing**: Reading/writing layout properties in loops
29
+ - **Expensive animations**: Animating layout properties (width, height, top, left) instead of transform/opacity
30
+ - **Missing optimization**: Images without lazy loading, unoptimized assets, missing will-change
31
+ - **Bundle size**: Unnecessary imports, unused dependencies
32
+ - **Render performance**: Unnecessary re-renders, missing memoization
33
+
34
+ 3. **Theming** - Check for:
35
+ - **Hard-coded colors**: Colors not using design tokens
36
+ - **Broken dark mode**: Missing dark mode variants, poor contrast in dark theme
37
+ - **Inconsistent tokens**: Using wrong tokens, mixing token types
38
+ - **Theme switching issues**: Values that don't update on theme change
39
+
40
+ 4. **Responsive Design** - Check for:
41
+ - **Fixed widths**: Hard-coded widths that break on mobile
42
+ - **Touch targets**: Interactive elements < 44x44px
43
+ - **Horizontal scroll**: Content overflow on narrow viewports
44
+ - **Text scaling**: Layouts that break when text size increases
45
+ - **Missing breakpoints**: No mobile/tablet variants
46
+
47
+ 5. **Anti-Patterns (CRITICAL)** - Check against ALL the **DON'T** guidelines in the frontend-design skill. Look for AI slop tells (AI color palette, gradient text, glassmorphism, hero metrics, card grids, generic fonts) and general design anti-patterns (gray on color, nested cards, bounce easing, redundant copy).
48
+
49
+ **CRITICAL**: This is an audit, not a fix. Document issues thoroughly with clear explanations of impact. Use other commands (normalize, optimize, harden, etc.) to fix issues after audit.
50
+
51
+ ## Generate Comprehensive Report
52
+
53
+ Create a detailed audit report with the following structure:
54
+
55
+ ### Anti-Patterns Verdict
56
+ **Start here.** Pass/fail: Does this look AI-generated? List specific tells from the skill's Anti-Patterns section. Be brutally honest.
57
+
58
+ ### Executive Summary
59
+ - Total issues found (count by severity)
60
+ - Most critical issues (top 3-5)
61
+ - Overall quality score (if applicable)
62
+ - Recommended next steps
63
+
64
+ ### Detailed Findings by Severity
65
+
66
+ For each issue, document:
67
+ - **Location**: Where the issue occurs (component, file, line)
68
+ - **Severity**: Critical / High / Medium / Low
69
+ - **Category**: Accessibility / Performance / Theming / Responsive
70
+ - **Description**: What the issue is
71
+ - **Impact**: How it affects users
72
+ - **WCAG/Standard**: Which standard it violates (if applicable)
73
+ - **Recommendation**: How to fix it
74
+ - **Suggested command**: Which command to use (e.g., `/normalize`, `/optimize`, `/harden`)
75
+
76
+ #### Critical Issues
77
+ [Issues that block core functionality or violate WCAG A]
78
+
79
+ #### High-Severity Issues
80
+ [Significant usability/accessibility impact, WCAG AA violations]
81
+
82
+ #### Medium-Severity Issues
83
+ [Quality issues, WCAG AAA violations, performance concerns]
84
+
85
+ #### Low-Severity Issues
86
+ [Minor inconsistencies, optimization opportunities]
87
+
88
+ ### Patterns & Systemic Issues
89
+
90
+ Identify recurring problems:
91
+ - "Hard-coded colors appear in 15+ components, should use design tokens"
92
+ - "Touch targets consistently too small (<44px) throughout mobile experience"
93
+ - "Missing focus indicators on all custom interactive components"
94
+
95
+ ### Positive Findings
96
+
97
+ Note what's working well:
98
+ - Good practices to maintain
99
+ - Exemplary implementations to replicate elsewhere
100
+
101
+ ### Recommendations by Priority
102
+
103
+ Create actionable plan:
104
+ 1. **Immediate**: Critical blockers to fix first
105
+ 2. **Short-term**: High-severity issues (this sprint)
106
+ 3. **Medium-term**: Quality improvements (next sprint)
107
+ 4. **Long-term**: Nice-to-haves and optimizations
108
+
109
+ ### Suggested Commands for Fixes
110
+
111
+ Map issues to appropriate commands:
112
+ - "Use `/normalize` to align components with design system (addresses 23 theming issues)"
113
+ - "Use `/optimize` to improve performance (addresses 12 performance issues)"
114
+ - "Use `/harden` to improve i18n and text handling (addresses 8 edge cases)"
115
+
116
+ **IMPORTANT**: Be thorough but actionable. Too many low-priority issues creates noise. Focus on what actually matters.
117
+
118
+ **NEVER**:
119
+ - Report issues without explaining impact (why does this matter?)
120
+ - Mix severity levels inconsistently
121
+ - Skip positive findings (celebrate what works)
122
+ - Provide generic recommendations (be specific and actionable)
123
+ - Forget to prioritize (everything can't be critical)
124
+ - Report false positives without verification
125
+
126
+ Remember: You're a quality auditor with exceptional attention to detail. Document systematically, prioritize ruthlessly, and provide clear paths to improvement. A good audit makes fixing easy.
127
+
@@ -0,0 +1,132 @@
1
+ ---
2
+ name: bolder
3
+ description: Amplify safe or boring designs to make them more visually interesting and stimulating. Increases impact while maintaining usability.
4
+ args:
5
+ - name: target
6
+ description: The feature or component to make bolder (optional)
7
+ required: false
8
+ user-invokable: true
9
+ ---
10
+
11
+ Increase visual impact and personality in designs that are too safe, generic, or visually underwhelming, creating more engaging and memorable experiences.
12
+
13
+ ## MANDATORY PREPARATION
14
+
15
+ ### Context Gathering (Do This First)
16
+
17
+ You cannot do a great job without having necessary context, such as target audience (critical), desired use-cases (critical), brand personality/tone, and everything else that a great human designer would need as well.
18
+
19
+ Attempt to gather these from the current thread or codebase.
20
+
21
+ 1. If you don't find *exact* information and have to infer from existing design and functionality, you MUST STOP and {{ask_instruction}} whether you got it right.
22
+ 2. Otherwise, if you can't fully infer or your level of confidence is medium or lower, you MUST {{ask_instruction}} clarifying questions first to complete your context.
23
+
24
+ Do NOT proceed until you have answers. Guessing leads to generic AI slop.
25
+
26
+ ### Use frontend-design skill
27
+
28
+ Use the frontend-design skill for design principles and anti-patterns. Do NOT proceed until it has executed and you know all DO's and DON'Ts.
29
+
30
+ ---
31
+
32
+ ## Assess Current State
33
+
34
+ Analyze what makes the design feel too safe or boring:
35
+
36
+ 1. **Identify weakness sources**:
37
+ - **Generic choices**: System fonts, basic colors, standard layouts
38
+ - **Timid scale**: Everything is medium-sized with no drama
39
+ - **Low contrast**: Everything has similar visual weight
40
+ - **Static**: No motion, no energy, no life
41
+ - **Predictable**: Standard patterns with no surprises
42
+ - **Flat hierarchy**: Nothing stands out or commands attention
43
+
44
+ 2. **Understand the context**:
45
+ - What's the brand personality? (How far can we push?)
46
+ - What's the purpose? (Marketing can be bolder than financial dashboards)
47
+ - Who's the audience? (What will resonate?)
48
+ - What are the constraints? (Brand guidelines, accessibility, performance)
49
+
50
+ If any of these are unclear from the codebase, {{ask_instruction}}
51
+
52
+ **CRITICAL**: "Bolder" doesn't mean chaotic or garish. It means distinctive, memorable, and confident. Think intentional drama, not random chaos.
53
+
54
+ **WARNING - AI SLOP TRAP**: When making things "bolder," AI defaults to the same tired tricks: cyan/purple gradients, glassmorphism, neon accents on dark backgrounds, gradient text on metrics. These are the OPPOSITE of bold—they're generic. Review ALL the DON'T guidelines in the frontend-design skill before proceeding. Bold means distinctive, not "more effects."
55
+
56
+ ## Plan Amplification
57
+
58
+ Create a strategy to increase impact while maintaining coherence:
59
+
60
+ - **Focal point**: What should be the hero moment? (Pick ONE, make it amazing)
61
+ - **Personality direction**: Maximalist chaos? Elegant drama? Playful energy? Dark moody? Choose a lane.
62
+ - **Risk budget**: How experimental can we be? Push boundaries within constraints.
63
+ - **Hierarchy amplification**: Make big things BIGGER, small things smaller (increase contrast)
64
+
65
+ **IMPORTANT**: Bold design must still be usable. Impact without function is just decoration.
66
+
67
+ ## Amplify the Design
68
+
69
+ Systematically increase impact across these dimensions:
70
+
71
+ ### Typography Amplification
72
+ - **Replace generic fonts**: Swap system fonts for distinctive choices (see frontend-design skill for inspiration)
73
+ - **Extreme scale**: Create dramatic size jumps (3x-5x differences, not 1.5x)
74
+ - **Weight contrast**: Pair 900 weights with 200 weights, not 600 with 400
75
+ - **Unexpected choices**: Variable fonts, display fonts for headlines, condensed/extended widths, monospace as intentional accent (not as lazy "dev tool" default)
76
+
77
+ ### Color Intensification
78
+ - **Increase saturation**: Shift to more vibrant, energetic colors (but not neon)
79
+ - **Bold palette**: Introduce unexpected color combinations—avoid the purple-blue gradient AI slop
80
+ - **Dominant color strategy**: Let one bold color own 60% of the design
81
+ - **Sharp accents**: High-contrast accent colors that pop
82
+ - **Tinted neutrals**: Replace pure grays with tinted grays that harmonize with your palette
83
+ - **Rich gradients**: Intentional multi-stop gradients (not generic purple-to-blue)
84
+
85
+ ### Spatial Drama
86
+ - **Extreme scale jumps**: Make important elements 3-5x larger than surroundings
87
+ - **Break the grid**: Let hero elements escape containers and cross boundaries
88
+ - **Asymmetric layouts**: Replace centered, balanced layouts with tension-filled asymmetry
89
+ - **Generous space**: Use white space dramatically (100-200px gaps, not 20-40px)
90
+ - **Overlap**: Layer elements intentionally for depth
91
+
92
+ ### Visual Effects
93
+ - **Dramatic shadows**: Large, soft shadows for elevation (but not generic drop shadows on rounded rectangles)
94
+ - **Background treatments**: Mesh patterns, noise textures, geometric patterns, intentional gradients (not purple-to-blue)
95
+ - **Texture & depth**: Grain, halftone, duotone, layered elements—NOT glassmorphism (it's overused AI slop)
96
+ - **Borders & frames**: Thick borders, decorative frames, custom shapes (not rounded rectangles with colored border on one side)
97
+ - **Custom elements**: Illustrative elements, custom icons, decorative details that reinforce brand
98
+
99
+ ### Motion & Animation
100
+ - **Entrance choreography**: Staggered, dramatic page load animations with 50-100ms delays
101
+ - **Scroll effects**: Parallax, reveal animations, scroll-triggered sequences
102
+ - **Micro-interactions**: Satisfying hover effects, click feedback, state changes
103
+ - **Transitions**: Smooth, noticeable transitions using ease-out-quart/quint/expo (not bounce or elastic—they cheapen the effect)
104
+
105
+ ### Composition Boldness
106
+ - **Hero moments**: Create clear focal points with dramatic treatment
107
+ - **Diagonal flows**: Escape horizontal/vertical rigidity with diagonal arrangements
108
+ - **Full-bleed elements**: Use full viewport width/height for impact
109
+ - **Unexpected proportions**: Golden ratio? Throw it out. Try 70/30, 80/20 splits
110
+
111
+ **NEVER**:
112
+ - Add effects randomly without purpose (chaos ≠ bold)
113
+ - Sacrifice readability for aesthetics (body text must be readable)
114
+ - Make everything bold (then nothing is bold - need contrast)
115
+ - Ignore accessibility (bold design must still meet WCAG standards)
116
+ - Overwhelm with motion (animation fatigue is real)
117
+ - Copy trendy aesthetics blindly (bold means distinctive, not derivative)
118
+
119
+ ## Verify Quality
120
+
121
+ Ensure amplification maintains usability and coherence:
122
+
123
+ - **NOT AI slop**: Does this look like every other AI-generated "bold" design? If yes, start over.
124
+ - **Still functional**: Can users accomplish tasks without distraction?
125
+ - **Coherent**: Does everything feel intentional and unified?
126
+ - **Memorable**: Will users remember this experience?
127
+ - **Performant**: Do all these effects run smoothly?
128
+ - **Accessible**: Does it still meet accessibility standards?
129
+
130
+ **The test**: If you showed this to someone and said "AI made this bolder," would they believe you immediately? If yes, you've failed. Bold means distinctive, not "more AI effects."
131
+
132
+ Remember: Bold design is confident design. It takes risks, makes statements, and creates memorable experiences. But bold without strategy is just loud. Be intentional, be dramatic, be unforgettable.