@devinilabs/reelstack 1.2.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.
- package/LICENSE +128 -0
- package/README.md +125 -0
- package/cli/beats.js +124 -0
- package/cli/bootstrap.js +124 -0
- package/cli/capture.js +34 -0
- package/cli/direction.js +114 -0
- package/cli/icons.js +49 -0
- package/cli/index.js +101 -0
- package/cli/init.js +253 -0
- package/cli/license.js +168 -0
- package/cli/lint.js +865 -0
- package/cli/preview.js +59 -0
- package/cli/render.js +404 -0
- package/cli/scaffold.js +239 -0
- package/cli/smoke.js +76 -0
- package/cli/update.js +26 -0
- package/cli/utils.js +184 -0
- package/docs/buyers-guide.md +220 -0
- package/docs/design-discipline.md +130 -0
- package/docs/family-galleries/dark.md +95 -0
- package/docs/family-galleries/forbidden.md +78 -0
- package/docs/family-galleries/glass.md +98 -0
- package/docs/family-galleries/paper.md +82 -0
- package/docs/family-galleries/warm.md +86 -0
- package/docs/superpowers/plans/2026-05-09-reelstack-init-readiness-gate.md +1166 -0
- package/docs/superpowers/specs/2026-05-09-reelstack-init-readiness-gate-design.md +233 -0
- package/families/dark/components/DriftingSpotlights.tsx +59 -0
- package/families/dark/components/FilmGrain.tsx +44 -0
- package/families/dark/components/ForestCard.tsx +43 -0
- package/families/dark/components/GridBackground.tsx +29 -0
- package/families/dark/components/RadialVignette.tsx +21 -0
- package/families/dark/components/Scanlines.tsx +35 -0
- package/families/dark/components/SegmentOpacity.ts +37 -0
- package/families/dark/components/index.ts +13 -0
- package/families/dark/index.ts +31 -0
- package/families/dark/palette.ts +98 -0
- package/families/dark/presets/claudedispatch.ts +46 -0
- package/families/dark/presets/codedrop.ts +37 -0
- package/families/dark/presets/gpt55.ts +54 -0
- package/families/dark/presets/notebooklm.ts +50 -0
- package/families/dark/presets/resourcescta.ts +35 -0
- package/families/dark/presets/skills.ts +40 -0
- package/families/dark/presets/stitch.ts +46 -0
- package/families/dark/presets/stitch2.ts +43 -0
- package/families/dark/typography.ts +16 -0
- package/families/forbidden/components/ForbiddenCausticBlobs.tsx +52 -0
- package/families/forbidden/components/NewsprintTexture.tsx +28 -0
- package/families/forbidden/components/TintedShadow.tsx +36 -0
- package/families/forbidden/components/index.ts +38 -0
- package/families/forbidden/index.ts +17 -0
- package/families/forbidden/palette.ts +88 -0
- package/families/forbidden/presets/heretic.ts +44 -0
- package/families/forbidden/typography.ts +18 -0
- package/families/glass/components/BreakdownCard.tsx +158 -0
- package/families/glass/components/CausticBlobs.tsx +49 -0
- package/families/glass/components/Counter.tsx +72 -0
- package/families/glass/components/EyebrowPill.tsx +59 -0
- package/families/glass/components/FilmStrip.tsx +202 -0
- package/families/glass/components/FloatingGlyphs.tsx +78 -0
- package/families/glass/components/GlassCard.tsx +58 -0
- package/families/glass/components/GlassCardBezel.tsx +45 -0
- package/families/glass/components/HairlineGrid.tsx +30 -0
- package/families/glass/components/IridescentRing.tsx +114 -0
- package/families/glass/components/IridescentText.tsx +98 -0
- package/families/glass/components/LightBeam.tsx +46 -0
- package/families/glass/components/ParticleBurst.tsx +62 -0
- package/families/glass/components/SonarRings.tsx +81 -0
- package/families/glass/components/StaggeredWords.tsx +74 -0
- package/families/glass/components/index.ts +20 -0
- package/families/glass/index.ts +31 -0
- package/families/glass/palette.ts +93 -0
- package/families/glass/presets/claudewatch.ts +64 -0
- package/families/glass/presets/claudewatchcta.ts +43 -0
- package/families/glass/presets/graphify.ts +45 -0
- package/families/glass/presets/gstack.ts +48 -0
- package/families/glass/presets/jcode.ts +50 -0
- package/families/glass/presets/lilagents.ts +52 -0
- package/families/glass/presets/paperclip.ts +43 -0
- package/families/glass/typography.ts +15 -0
- package/families/index.ts +49 -0
- package/families/paper/components/CardSpring.tsx +42 -0
- package/families/paper/components/CreamGrid.tsx +26 -0
- package/families/paper/components/EditorialSerifText.tsx +51 -0
- package/families/paper/components/GreenAccentCard.tsx +10 -0
- package/families/paper/components/PaperShadow.tsx +30 -0
- package/families/paper/components/ScaleBlurText.tsx +40 -0
- package/families/paper/components/index.ts +11 -0
- package/families/paper/index.ts +23 -0
- package/families/paper/palette.ts +102 -0
- package/families/paper/presets/designreel.ts +32 -0
- package/families/paper/presets/devini3d.ts +45 -0
- package/families/paper/presets/justdrop.ts +39 -0
- package/families/paper/presets/opus.ts +48 -0
- package/families/paper/typography.ts +17 -0
- package/families/warm/components/AccentGlow.tsx +60 -0
- package/families/warm/components/BentoCell.tsx +56 -0
- package/families/warm/components/BentoGrid.tsx +30 -0
- package/families/warm/components/FilmGrain.tsx +36 -0
- package/families/warm/components/ScaleBlurCounter.tsx +71 -0
- package/families/warm/components/WarmSurface.tsx +35 -0
- package/families/warm/components/index.ts +11 -0
- package/families/warm/index.ts +19 -0
- package/families/warm/palette.ts +81 -0
- package/families/warm/presets/huashu.ts +49 -0
- package/families/warm/presets/mempalace.ts +51 -0
- package/families/warm/typography.ts +17 -0
- package/package.json +85 -0
- package/reference/dark/claudedispatch.tsx +2441 -0
- package/reference/dark/notebooklm.tsx +2316 -0
- package/reference/dark/stitch.tsx +3040 -0
- package/reference/forbidden/heretic.tsx +2636 -0
- package/reference/glass/claudewatch.tsx +3827 -0
- package/reference/glass/graphify.tsx +2418 -0
- package/reference/glass/paperclip.tsx +2218 -0
- package/reference/paper/designreel.tsx +883 -0
- package/reference/paper/justdrop.tsx +1898 -0
- package/reference/paper/opus.tsx +1770 -0
- package/reference/warm/huashu.tsx +3413 -0
- package/reference/warm/mempalace.tsx +2909 -0
- package/skill/SKILL.md +229 -0
- package/skill/commands/reelstack-beats.md +20 -0
- package/skill/commands/reelstack-capture.md +24 -0
- package/skill/commands/reelstack-critique.md +15 -0
- package/skill/commands/reelstack-dark.md +40 -0
- package/skill/commands/reelstack-direction.md +17 -0
- package/skill/commands/reelstack-forbidden.md +25 -0
- package/skill/commands/reelstack-glass.md +39 -0
- package/skill/commands/reelstack-icons.md +22 -0
- package/skill/commands/reelstack-init.md +17 -0
- package/skill/commands/reelstack-lint.md +22 -0
- package/skill/commands/reelstack-paper.md +36 -0
- package/skill/commands/reelstack-render.md +20 -0
- package/skill/commands/reelstack-warm.md +36 -0
- package/templates/dark/template.tsx +115 -0
- package/templates/forbidden/template.tsx +111 -0
- package/templates/glass/template.tsx +201 -0
- package/templates/paper/template.tsx +133 -0
- package/templates/warm/template.tsx +210 -0
- package/utils/ai-purple-blocklist.ts +13 -0
- package/utils/banned-fonts.ts +11 -0
- package/utils/cubic-bezier.ts +36 -0
- package/utils/easing.ts +84 -0
- package/utils/grid.ts +13 -0
- package/utils/render-presets.json +56 -0
- package/utils/safe-zones.tsx +57 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# Cream Paper — Family Reference
|
|
2
|
+
|
|
3
|
+
> Editorial print mood. Warm, document-like, with depth in the dark-green card stack.
|
|
4
|
+
|
|
5
|
+
The contrast move to Glass. Where Glass feels like premium product packaging, Paper feels like the product's launch announcement on quality paper stock.
|
|
6
|
+
|
|
7
|
+
## Palette
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
bg #f0ede8 Warm cream paper.
|
|
11
|
+
bgWarm #e8e4de
|
|
12
|
+
bgLight #edeae4
|
|
13
|
+
paperGrid #e5e2dd Grid stroke (faint, paper-tone).
|
|
14
|
+
|
|
15
|
+
heading #1a1a1a Light-mode text.
|
|
16
|
+
body #2d2d2d
|
|
17
|
+
muted #6b6b6b
|
|
18
|
+
|
|
19
|
+
cardForest #1e3a27 Dark-green card surface.
|
|
20
|
+
cardForestLift #2d4433
|
|
21
|
+
cardForestDeep #142318
|
|
22
|
+
|
|
23
|
+
accent #D4663A Claude terracotta.
|
|
24
|
+
accentDark #1e3a27
|
|
25
|
+
danger #c0392b
|
|
26
|
+
success #1e7a45
|
|
27
|
+
|
|
28
|
+
terminalGreen #5be8a0 For embedded terminal/code blocks.
|
|
29
|
+
terminalCaret #9B6B4F
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Primitives (inline in template — extracted in v1.1)
|
|
33
|
+
|
|
34
|
+
| Component | Purpose |
|
|
35
|
+
|---|---|
|
|
36
|
+
| `PaperGrid` | Cream-tone grid background with radial mask. |
|
|
37
|
+
| `ScaleBlurText` | Hero text with power4Out scale + blur entrance. |
|
|
38
|
+
| `GreenCard` | The family's depth move. Spring config damping 20 / stiffness 200. |
|
|
39
|
+
| (in v1.1) `CardSpring`, `GreenAccentCard`, `PaperShadow` | Standalone primitives extracted from inline. |
|
|
40
|
+
|
|
41
|
+
## Presets
|
|
42
|
+
|
|
43
|
+
| Preset | Source | Frames | Use when |
|
|
44
|
+
|---|---|---|---|
|
|
45
|
+
| `justdrop` | JustDropReel | 1760 (58.5s) | Skill / SaaS launch. Card-stack heavy. |
|
|
46
|
+
| `opus` | OpusReel | 3330 (111s) | Thesis-driven long-form. Embedded screenshot fades. |
|
|
47
|
+
| `designreel` | DesignReel | 300 (10s) | Ultra-short teaser. Compressed beats. |
|
|
48
|
+
| `devini3d` | Devini3DReel | 1170 (39s) | Showcase reel with hero clip + closing motion graphics. |
|
|
49
|
+
|
|
50
|
+
## House rules (Paper-specific)
|
|
51
|
+
|
|
52
|
+
1. **Light text on cream is `#1a1a1a` heading / `#2d2d2d` body / `#6b6b6b` muted.** Never `#000` — black is too harsh on the cream tone.
|
|
53
|
+
2. **Card springs use `damping: 20, stiffness: 200`.** The family's signature motion. Don't override without a deliberate reason.
|
|
54
|
+
3. **Cream paper bg is non-negotiable.** If you need a dark variant, switch families to Dark Cinematic.
|
|
55
|
+
4. **PaperShadow stack is multi-layer.** `0 1px 2px rgba(26,26,26,0.04), 0 4px 12px rgba(26,26,26,0.06)` for soft. Never single-shadow flat overlays.
|
|
56
|
+
5. **Dark green cards are the depth move.** Use them for embedded UI, terminal blocks, "before/after" comparisons. Card stacks of 2-3 read better than singletons.
|
|
57
|
+
|
|
58
|
+
## Motion vocabulary
|
|
59
|
+
|
|
60
|
+
- **Card entrance:** spring with `springConfig` (damping 20, stiffness 200). Translate from below + scale 0.96 → 1.0.
|
|
61
|
+
- **Text reveal:** `ScaleBlurText` — power4Out over 30 frames, blur 10px → 0, scale 0.94 → 1.0.
|
|
62
|
+
- **Page transitions:** Crossfade with 12-frame overlap. No hard cuts.
|
|
63
|
+
|
|
64
|
+
## Variant overlay (v1.1+)
|
|
65
|
+
|
|
66
|
+
Cream Paper inherits from **leonxlnx/taste-skill-minimalist** + **leonxlnx/taste-skill-soft** + **leonxlnx/taste-skill (master)**. The Minimalist + Soft overlay adds:
|
|
67
|
+
|
|
68
|
+
- **`<EditorialSerifText />`** — hero text with serif fallback chain `Lyon Text → Newsreader → Playfair Display → Georgia → serif`. Subtle 24-frame `power3Out` entrance. Use for editorial-magazine headlines.
|
|
69
|
+
- **`reduceMotion` prop** on `CardSpring`, `ScaleBlurText` motion components.
|
|
70
|
+
- **`ALLOWED_ACCENTS`** export — lint flags any color outside the cream-paper palette (heading, body, muted, cardForest stack, terracotta accent, terminal-green, semantic success/danger).
|
|
71
|
+
- **WCAG AA+ contrast** documented inline in `palette.ts` (heading: 15.6:1, body: 11.6:1, muted: 4.8:1).
|
|
72
|
+
- **4-px grid constants** re-exported from the family entrypoint: `import { palette, GRID, GRID_2, GRID_4, … } from "@devinilabs/reelstack/families/paper"`.
|
|
73
|
+
|
|
74
|
+
## Reference reels (v1.1.1+)
|
|
75
|
+
|
|
76
|
+
3 reference reels ship for this family at `~/.reelstack/reference/paper/<preset>.tsx`:
|
|
77
|
+
|
|
78
|
+
- **justdrop** — Skill-ecosystem reveal with the family's signature dark-green card stack.
|
|
79
|
+
- **opus** — Thesis-driven 111s long-form. Embedded benchmark screenshots + agents.md cards.
|
|
80
|
+
- **designreel** — 10s teaser. Compressed-beat structure for promo clips.
|
|
81
|
+
|
|
82
|
+
These are the actual Devini Labs reels (asset-stripped). Read them when iterating on your scaffolded reel. Pattern adaptation is encouraged; verbatim re-publication is not.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Warm Signature — Family Reference
|
|
2
|
+
|
|
3
|
+
> Confident product launch. Strict single-accent rule. Bento grids for feature matrices.
|
|
4
|
+
|
|
5
|
+
The family's contract is its discipline: amber primary, emerald payoff, red wall. **No other accents.** The lint command flags any other color used in a Warm Signature reel.
|
|
6
|
+
|
|
7
|
+
## Palette
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
bg #09090b Warm zinc base.
|
|
11
|
+
bgLift #111114
|
|
12
|
+
surface #15151c
|
|
13
|
+
surfaceWarm #1a1610 The family's signature warm surface.
|
|
14
|
+
|
|
15
|
+
fg #fafafa
|
|
16
|
+
fgSoft #d4d4d8
|
|
17
|
+
fgMuted #9f9fa9
|
|
18
|
+
fgDim #71717b
|
|
19
|
+
|
|
20
|
+
amber #f99c00 THE primary accent. Use everywhere brand expression matters.
|
|
21
|
+
amberSoft #fcbb00
|
|
22
|
+
amberDeep #9a5e00
|
|
23
|
+
amberGlow rgba(249, 156, 0, 0.20)
|
|
24
|
+
|
|
25
|
+
emerald #00d294 Payoff — used ONLY for "ship" / launch / success moments.
|
|
26
|
+
emeraldSoft #5ee9b5
|
|
27
|
+
emeraldDeep #00875a
|
|
28
|
+
|
|
29
|
+
red #ef4444 Wall — used ONLY for "limit" / "blocked" / "broken" moments.
|
|
30
|
+
redSoft #fca5a5
|
|
31
|
+
redDeep #7f1d1d
|
|
32
|
+
|
|
33
|
+
claudeWarm #d4663a Allowed when product is Claude-adjacent.
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Primitives
|
|
37
|
+
|
|
38
|
+
| Component | Purpose |
|
|
39
|
+
|---|---|
|
|
40
|
+
| `AccentGlow` | Amber radial glow that breathes (sine on opacity). Background. |
|
|
41
|
+
| `FilmGrain` | SVG turbulence noise overlay at 6% opacity, multiply blend. |
|
|
42
|
+
| `BentoCell` (template-inline) | Single grid cell with spring entrance + amber border. |
|
|
43
|
+
| (in v1.1) `BentoGrid`, `WarmSurface`, `ScaleBlurCounter` | Standalone primitives extracted from inline. |
|
|
44
|
+
|
|
45
|
+
## Presets
|
|
46
|
+
|
|
47
|
+
| Preset | Source | Frames | Use when |
|
|
48
|
+
|---|---|---|---|
|
|
49
|
+
| `huashu` | HuashuReel | 2984 (99.4s) | Product launch. Reference build. |
|
|
50
|
+
| `mempalace` | MemPalaceReel | 2520 (84s) | Memory / learning narrative. Parchment-gold variant. |
|
|
51
|
+
|
|
52
|
+
## House rules (Warm-specific)
|
|
53
|
+
|
|
54
|
+
1. **ONE primary accent only.** Amber. Period.
|
|
55
|
+
2. **Emerald is the payoff.** Use it for "ship" / "launch" / "success" / final-frame moments only. Never for body text.
|
|
56
|
+
3. **Red is the wall.** Use for "limit" / "blocked" / "before" moments only. Never decorative.
|
|
57
|
+
4. **No blues. No purples. No pinks.** Lint flags them. If your story needs another hue, you're in the wrong family — use Dark Cinematic.
|
|
58
|
+
5. **Bento grids for feature matrices.** When showing 4+ capabilities, use a 2-column bento. Cells stagger-reveal at 6-frame offsets.
|
|
59
|
+
6. **Surface warm vs. surface cold.** `surfaceWarm` (#1a1610) for amber-adjacent content; `surface` (#15151c) for neutral cards.
|
|
60
|
+
|
|
61
|
+
## Motion vocabulary
|
|
62
|
+
|
|
63
|
+
- **AccentGlow breath:** sine wave on opacity, period ~5s. Provides ambient life without distracting.
|
|
64
|
+
- **Bento staggers:** 6 frames between cells. Spring snappy.
|
|
65
|
+
- **FilmGrain stays on.** Don't toggle per scene.
|
|
66
|
+
- **Counter for stats:** scale-blur entrance, power4Out, 36 frames.
|
|
67
|
+
- **Audio lock:** BEAT constants from `/reelstack-beats` — anchor to rhythm phrases, not numeric beats.
|
|
68
|
+
|
|
69
|
+
## Variant overlay (v1.1+)
|
|
70
|
+
|
|
71
|
+
Warm Signature inherits from **leonxlnx/taste-skill-minimalist** + **leonxlnx/taste-skill-soft** + **leonxlnx/taste-skill (master)**. The Minimalist + Soft overlay adds:
|
|
72
|
+
|
|
73
|
+
- **Editorial-serif Warm hero option** — import `<EditorialSerifText />` from `@devinilabs/reelstack/families/paper/components` for an editorial-magazine variant of the amber name reveal. Cross-family import is intentional; the component honors the Warm palette via the `color` prop.
|
|
74
|
+
- **`reduceMotion` prop** on `AccentGlow`, `BentoCell`, `ScaleBlurCounter`, `FilmGrain` (dampens grain opacity).
|
|
75
|
+
- **`ALLOWED_ACCENTS`** already enforced (single-accent rule is the family's foundational contract — amber primary, emerald payoff, red wall, claudeWarm). Lint flags any other hue.
|
|
76
|
+
- **WCAG AA+ contrast** documented inline in `palette.ts` (fg: 19.6:1, fgSoft: 13.9:1, fgMuted: 7.7:1).
|
|
77
|
+
- **Diffused warm shadow stack** — Soft variant's multi-layer `paperShadow`-style stacks adapted to warm-zinc backgrounds for premium card depth.
|
|
78
|
+
|
|
79
|
+
## Reference reels (v1.1.1+)
|
|
80
|
+
|
|
81
|
+
2 reference reels ship for this family at `~/.reelstack/reference/warm/<preset>.tsx`:
|
|
82
|
+
|
|
83
|
+
- **huashu** — Confident product launch with strict single-accent rule. Bento grid feature matrix.
|
|
84
|
+
- **mempalace** — Memory palace narrative. Parchment-gold variant on dark zinc.
|
|
85
|
+
|
|
86
|
+
These are the actual Devini Labs reels (asset-stripped). Read them when iterating on your scaffolded reel. Pattern adaptation is encouraged; verbatim re-publication is not.
|