@struq/skill 0.2.2 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/README.md +9 -7
  2. package/package.json +2 -2
  3. package/skills/struq/SKILL.md +304 -200
  4. package/skills/struq/cinematic/showpieces/README.md +18 -0
  5. package/skills/struq/cinematic/showpieces/toonstuk-fill-rows.tsx +74 -0
  6. package/skills/struq/cinematic/showpieces/toonstuk-hero-opener.tsx +128 -0
  7. package/skills/struq/cinematic/showpieces/toonstuk-image-to-fullbleed.tsx +78 -0
  8. package/skills/struq/cinematic/showpieces/toonstuk-manifesto-scrub.tsx +81 -0
  9. package/skills/struq/cinematic/showpieces/toonstuk-panel-wipe.tsx +89 -0
  10. package/skills/struq/cinematic/showpieces/toonstuk-pixel-resolve.tsx +107 -0
  11. package/skills/struq/cinematic/showpieces/toonstuk-project-stack.tsx +86 -0
  12. package/skills/struq/cinematic/showpieces/toonstuk-scrub-connector.tsx +78 -0
  13. package/skills/struq/cinematic/showpieces/toonstuk-wordmark-finale.tsx +105 -0
  14. package/skills/struq/recipes/app/fonts.ts +22 -0
  15. package/skills/struq/recipes/app/globals.css +185 -0
  16. package/skills/struq/recipes/app/layout.tsx +28 -0
  17. package/skills/struq/recipes/components/struq/Cursor.tsx +117 -0
  18. package/skills/struq/recipes/components/struq/HeroCanvas.tsx +278 -0
  19. package/skills/struq/recipes/components/struq/HorizontalGallery.tsx +106 -0
  20. package/skills/struq/recipes/components/struq/MagneticButton.tsx +92 -0
  21. package/skills/struq/recipes/components/struq/MediaFrame.tsx +96 -0
  22. package/skills/struq/recipes/components/struq/PinnedZoom.tsx +79 -0
  23. package/skills/struq/recipes/components/struq/Reveal.tsx +64 -0
  24. package/skills/struq/recipes/components/struq/SmoothScroll.tsx +57 -0
  25. package/skills/struq/recipes/components/struq/SplitHeadline.tsx +68 -0
  26. package/skills/struq/recipes/components/struq/scenes/contours.ts +161 -0
  27. package/skills/struq/recipes/components/struq/scenes/dots.ts +110 -0
  28. package/skills/struq/recipes/components/struq/scenes/ripple.ts +99 -0
  29. package/skills/struq/recipes/components/struq/scenes/types.ts +114 -0
  30. package/skills/struq/recipes/lib/gsap.ts +21 -0
  31. package/skills/struq/references/anti-patterns.md +71 -6
  32. package/skills/struq/references/baseline-prompt.md +18 -14
  33. package/skills/struq/references/brief-router.md +7 -8
  34. package/skills/struq/references/composition.md +0 -1
  35. package/skills/struq/references/depth-parallax.md +1 -1
  36. package/skills/struq/references/direction.md +5 -5
  37. package/skills/struq/references/hero-scenes.md +107 -0
  38. package/skills/struq/references/iconography.md +1 -1
  39. package/skills/struq/references/imagery.md +10 -29
  40. package/skills/struq/references/micro-interactions.md +1 -1
  41. package/skills/struq/references/mobile-composition.md +1 -1
  42. package/skills/struq/references/niche-packets.md +338 -0
  43. package/skills/struq/references/page-architecture.md +2 -2
  44. package/skills/struq/references/pinning-scrub.md +3 -4
  45. package/skills/struq/references/scroll-reveals.md +1 -2
  46. package/skills/struq/references/sections.md +141 -0
  47. package/skills/struq/references/seo.md +2 -2
  48. package/skills/struq/references/showcase.md +2 -2
  49. package/skills/struq/references/svg-motion.md +390 -390
  50. package/skills/struq/references/typography.md +39 -39
  51. package/skills/struq/references/vibe-presets.md +5 -5
  52. package/skills/struq/references/webgl-scenes.md +593 -593
  53. package/skills/struq/scripts/canon.mjs +309 -0
  54. package/skills/struq/scripts/check.mjs +547 -0
  55. package/skills/struq/scripts/font-names.mjs +40 -0
  56. package/skills/struq/scripts/images.mjs +360 -0
  57. package/skills/struq/scripts/log.mjs +92 -0
  58. package/skills/struq/scripts/packs.mjs +156 -0
  59. package/skills/struq/scripts/recipes.mjs +135 -0
@@ -12,7 +12,7 @@ Every id carries a **kind**:
12
12
  1. **Budget:** one `showpiece` for a landing page, two for a long narrative or portfolio site. A third reads as a demo reel, not a site. `system` ids are free of the budget but still obey the motion baseline.
13
13
  2. **Placement:** at act breaks ([page-architecture.md](page-architecture.md) §3), with a breather before and after. A showpiece is its own density class, so "breather, showpiece, breather" is the pattern, even when the showpiece itself is airy (`manifesto-fill`). Never as the first thing under the hero and never two in a row; a quiet section between them is what makes each one land.
14
14
  3. **Content first:** a showpiece needs material worth staging. A horizontal gallery with four weak images is worse than a static grid.
15
- 4. **No real imagery yet?** Prefer type-led showpieces (`manifesto-fill`) over media-led ones. Where an image slot must exist before the shoot, it renders as a graded tonal frame at the declared ratio with the shot-list caption set in the eyebrow style ([imagery.md](imagery.md) §4b). Never grey boxes, never random stock to fill the frame.
15
+ 4. **No real imagery yet?** The Struq beeldbank pack fills every media slot, so a media-led showpiece has real photos from the first build ([struq-imagery.md](struq-imagery.md)). Never grey boxes, never placeholder frames.
16
16
  5. **Mobile is authored, not shrunk:** every recipe below names its touch behavior. Build it at the same time as the desktop version.
17
17
  6. **Cost** is implementation and debugging time: **S** is under an hour, **M** is a few hours, **L** is a day or more.
18
18
 
@@ -84,4 +84,4 @@ At most two showpieces each; the system ids around them set the rhythm and do no
84
84
  - A showpiece in the first 100vh under the hero, unless it **is** the hero
85
85
  - A showpiece without a reduced-motion version (the content must still read as a static layout, and the server markup is that layout: nothing hidden by inline styles, [pitfalls.md](pitfalls.md) §2)
86
86
  - A recipe chosen because it is impressive rather than because the content earns it
87
- - A media-led showpiece staged on placeholders (a 3D product built from primitives counts, unless it is a declared stand-in per [webgl-scenes.md](webgl-scenes.md) §4, "No model file yet")
87
+ - A media-led showpiece staged on empty frames (a 3D product built from primitives counts, unless it is a declared stand-in per [webgl-scenes.md](webgl-scenes.md) §4, "No model file yet")