cinematic-scroll-skill 2.1.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/COMPATIBILITY.md +244 -0
- package/LICENSE +21 -0
- package/MODELS.md +92 -0
- package/README.md +250 -0
- package/SKILL.md +1003 -0
- package/audit-mode.md +497 -0
- package/bin/install.mjs +91 -0
- package/compile-choreography.mjs +296 -0
- package/decision-log.md +241 -0
- package/examples/GETTING_STARTED.md +279 -0
- package/examples/KNOWN_ISSUES.md +50 -0
- package/examples/PROMPTS.md +166 -0
- package/examples/luxe/README.md +88 -0
- package/examples/luxe/index.html +662 -0
- package/examples/noir/README.md +72 -0
- package/examples/noir/index.html +634 -0
- package/examples/pop/README.md +81 -0
- package/examples/pop/index.html +711 -0
- package/examples/renaissance/README.md +39 -0
- package/examples/renaissance/index.html +648 -0
- package/examples/studio/README.md +77 -0
- package/examples/studio/chapters.js +105 -0
- package/examples/studio/index.html +520 -0
- package/manifest.json +92 -0
- package/manifest.md +136 -0
- package/package.json +56 -0
- package/references/film-archetypes.md +211 -0
- package/references/performance-budget.md +499 -0
- package/references/scroll-patterns.md +693 -0
- package/scroll-choreography-compilation.md +543 -0
- package/scroll-choreography.json +1512 -0
- package/taste-guardrails.md +164 -0
- package/templates/nextjs/.env.example +41 -0
- package/templates/nextjs/app/api/fal/proxy/route.ts +33 -0
- package/templates/nextjs/app/api/fal/webhook/route.ts +132 -0
- package/templates/nextjs/app/api/generate-edition-asset/route.ts +66 -0
- package/templates/nextjs/app/globals.css +80 -0
- package/templates/nextjs/app/layout.tsx +21 -0
- package/templates/nextjs/app/page.tsx +10 -0
- package/templates/nextjs/components/ChapterDemoVisual.tsx +212 -0
- package/templates/nextjs/components/ChapterScene.tsx +373 -0
- package/templates/nextjs/components/EditionsPage.tsx +116 -0
- package/templates/nextjs/components/SmoothScrollProvider.tsx +8 -0
- package/templates/nextjs/lib/api-guard.ts +110 -0
- package/templates/nextjs/lib/editions-manifest.ts +224 -0
- package/templates/nextjs/lib/fal-client.ts +12 -0
- package/templates/nextjs/lib/fal-generate.ts +86 -0
- package/templates/nextjs/lib/fal-models.ts +213 -0
- package/templates/nextjs/lib/prompt-contract.ts +97 -0
- package/templates/nextjs/lib/use-device.ts +42 -0
- package/templates/nextjs/lib/use-lenis.ts +35 -0
- package/templates/nextjs/next.config.ts +29 -0
- package/templates/nextjs/package-lock.json +6455 -0
- package/templates/nextjs/package.json +41 -0
- package/templates/nextjs/package.patch.json +28 -0
- package/templates/nextjs/postcss.config.js +6 -0
- package/templates/nextjs/scripts/generate-chapter-assets.mjs +243 -0
- package/templates/nextjs/scripts/setup.mjs +170 -0
- package/templates/nextjs/tailwind.config.ts +37 -0
- package/templates/nextjs/tsconfig.json +23 -0
- package/troubleshooting.md +1284 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# Noir — VANTASCOPE · "HOLLOW STAR"
|
|
2
|
+
|
|
3
|
+
A cinematic **sci-fi noir** worked example for **cinematic-scroll** (archetype A5).
|
|
4
|
+
World: near-black void, **deep-teal atmospheric fog**, a single **crimson edge-light**
|
|
5
|
+
as the only accent, heavy film grain, and a **figure-in-fog** parallax still driven
|
|
6
|
+
by a scroll-linked **3D camera** (rotateX ±4°, rotateY ±2°, translateZ dolly). Titles
|
|
7
|
+
land via a **vertical clip-path mask wipe** (not a cross-fade), under an oversized
|
|
8
|
+
**Roman-numeral watermark** ghost layer. Fictional studio (**VANTASCOPE**) and a
|
|
9
|
+
fictional title (**HOLLOW STAR**) — no real titles, people, or brands.
|
|
10
|
+
|
|
11
|
+
Between the hero and the descent sits **"The Approach"** — a dedicated GSAP
|
|
12
|
+
ScrollTrigger beat showcasing a **dolly-zoom** (Vertigo — the backdrop pushes in
|
|
13
|
+
while the caption holds) and a **scrubbed signal draw** (a crimson waveform that
|
|
14
|
+
draws across the frame via `stroke-dashoffset` as you scroll).
|
|
15
|
+
|
|
16
|
+
Director grammar: **Denis Villeneuve** (vast negative space, atmospheric haze, slow
|
|
17
|
+
revelation) with **Nolan-grade chiaroscuro** contrast.
|
|
18
|
+
|
|
19
|
+
Single self-contained `index.html` — no build step, no npm. The hand-rolled rAF
|
|
20
|
+
cinematic engine has **zero JS dependencies**; the one "Approach" beat additionally
|
|
21
|
+
loads **GSAP + ScrollTrigger** from a CDN (deferred, feature-detected — if it fails to
|
|
22
|
+
load, that beat simply stays at its complete static state and everything else runs).
|
|
23
|
+
Only other external resource: Google Fonts. GitHub-Pages-native.
|
|
24
|
+
|
|
25
|
+
- **4 chapters** (Signal · Descent · Witness · Offer) + a **GSAP "Approach" showcase beat**
|
|
26
|
+
- **Palette:** near-black `#0A0C0F`, deep teal `#0B1A1F`/`#14343C`/`#1E5460`,
|
|
27
|
+
crimson accent `#E23A4E`, off-white type `#E9ECEE`
|
|
28
|
+
- **Type:** Oswald (condensed film-poster display), Archivo (UI), JetBrains Mono (labels)
|
|
29
|
+
|
|
30
|
+
## Run it / preview
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
python3 -m http.server 8099 # then open http://localhost:8099/examples/noir/
|
|
34
|
+
# …or just open index.html directly in a browser.
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Deploys as-is to GitHub Pages at
|
|
38
|
+
`https://mustbesimo.github.io/cinematic-scroll-skill/examples/noir/` — all paths are relative.
|
|
39
|
+
|
|
40
|
+
## Works with ZERO images
|
|
41
|
+
|
|
42
|
+
The page renders a complete, intentional **CSS-only placeholder** for every still
|
|
43
|
+
(teal fog + silhouette mass + crimson rim-light + locked grain). On load it probes
|
|
44
|
+
for a real `assets/<id>.jpg`; if the file 404s, the placeholder is used. Drop real
|
|
45
|
+
images into `assets/` later and the page picks them up automatically — no code change.
|
|
46
|
+
|
|
47
|
+
## Image slots
|
|
48
|
+
|
|
49
|
+
Generate these as **cinematic-noir website-interface stills**: teal + crimson,
|
|
50
|
+
atmospheric fog, edge-lit figure, film grain, ultra-high-contrast chiaroscuro,
|
|
51
|
+
near-black shadows. **No baked-in text or logos** (the page supplies all type).
|
|
52
|
+
|
|
53
|
+
| Slot (probed path) | Aspect | Target px | Generation prompt |
|
|
54
|
+
|-------------------------|:------:|:-----------:|-------------------|
|
|
55
|
+
| `assets/0-signal.jpg` | 4 : 5 | 1024 × 1280 | Cinematic sci-fi noir still: a lone figure in a long coat seen from behind, standing in thick **teal volumetric fog**, lit by a single hard **crimson rim-light** along one edge, vast empty hangar receding into darkness, anamorphic lens, heavy **film grain**, near-black shadows, no text, no logos, Villeneuve atmosphere. |
|
|
56
|
+
| `assets/1-descent.jpg` | 4 : 5 | 1024 × 1280 | Cinematic sci-fi noir still: a narrow derelict-spaceship corridor descending into blackness, faint **crimson** emergency strip-lighting, cold **teal haze** drifting through frame, a silhouetted figure small at the far end, wet metal reflections, extreme contrast, heavy grain, anamorphic, no text, no logos. |
|
|
57
|
+
| `assets/2-witness.jpg` | 4 : 5 | 1024 × 1280 | Cinematic sci-fi noir still: extreme close portrait of a face half-lit — one side in deep **teal shadow**, the other catching a thin **crimson edge-light** — fog particles suspended in air, unreadable expression, ultra-high-contrast chiaroscuro, heavy film grain, anamorphic, no text, no logos. |
|
|
58
|
+
| `assets/3-access.jpg` | 4 : 5 | 1024 × 1280 | Cinematic sci-fi noir still: a backlit **open airlock doorway**, blinding **teal-white** light pouring through fog, a silhouetted figure in the threshold framed by **crimson edge-light**, vast darkness around the frame, anamorphic flares, heavy grain, ultra contrast, no text, no logos — reads as a glowing CTA portal. |
|
|
59
|
+
|
|
60
|
+
> The prompts live verbatim in the `CHAPTERS` manifest inside `index.html` (`prompt`
|
|
61
|
+
> field) — the single source of truth. Keep every still **text-free / logo-free**;
|
|
62
|
+
> all titles, the crimson CTA, and labels are drawn by the page itself.
|
|
63
|
+
|
|
64
|
+
## Accessibility & performance
|
|
65
|
+
|
|
66
|
+
- Semantic landmarks (`header` / `nav` / `main` / `footer`), `aria-label`s, each still
|
|
67
|
+
exposed as `role="img"` with a descriptive label.
|
|
68
|
+
- **Compositor-only** scroll: the rAF-batched loop mutates only `transform` /
|
|
69
|
+
`opacity` (plus the title `clip-path` mask wipe); passive scroll listener; 3D only
|
|
70
|
+
for in-view sections.
|
|
71
|
+
- **Reduced-motion** (`prefers-reduced-motion: reduce`) **and mobile (≤680px)** both
|
|
72
|
+
drop the pin and render a clean **static mid-state** — full opacity, no scrolljack.
|