* feat(editorial-collage): introduce Atelier Zero style landing page assets and documentation - Added new design system for Atelier Zero, including a detailed `DESIGN.md` file. - Created an `editorial-collage` skill with associated assets for a magazine-grade landing page. - Included example HTML and image assets for various sections (hero, about, capabilities, etc.). - Updated README files to guide usage and customization of the new skill and design system. - Introduced a new image generation prompt pack for consistent visual style across the landing page. * fix(i18n): cover atelier-zero design system and editorial-collage skill in German content Generated-By: looper 0.4.0 (runner=fixer, agent=claude-code) * fix(editorial-collage): align manifest with shipped assets and address PR review - Update image-manifest.json widths/heights/ratios to match the actual PNGs on disk: hero/about/cap/testimonial/cta = 1024x1024 (1:1), method-1..4 = 816x816 (1:1), lab-1..5 and work-1..2 = 768x1024 (3:4). Mirror the new dimensions in imagegen-prompts.md headings and in README.md. - Mark testimonial.png as rekey_on_brand_change so the manifest agrees with SKILL.md's "regenerate at minimum testimonial.png" guidance, and add work-1/work-2 to the rekey list in SKILL.md and README.md. - Add a Hero (I.) sec-rule and renumber every following section II..VIII in example.html so the eight sections walk sequentially I -> VIII and the page-of-008 counter starts at 001. - Delete editorial-artifact-system/ (16 duplicate PNGs + index.html + skills.md draft) — the canonical version is skills/editorial-collage/ and the duplicate had no consumer references. - DESIGN.md: spell out which dimensions of each magazine reference (Monocle/Apartamento/IDEA), document the rationale for single-accent vs multi-accent, and extend the anti-pattern list with AI-image-gen artifacts the system explicitly rejects. - SKILL.md: add italic_words validation guidance (trim, cap at 4, verb->noun rewrite, punctuation strip) and replace the broken-image fallback with an inline SVG placeholder sized to the slot's manifest aspect ratio. Generated-By: looper 0.4.0 (runner=fixer, agent=claude-code) * fix(daemon): serve skill example assets via stable API route Skill example HTML such as `skills/editorial-collage/example.html` references shipped images via `./assets/*.png`. The web app loads the example into a sandboxed iframe via `srcdoc`, where relative URLs resolve against `about:srcdoc` and the PNGs render as broken images in the Examples preview. Add a `GET /api/skills/:id/assets/*` route that serves files under the skill's `assets/` directory with path-traversal guards, and rewrite `src='./assets/<file>'` / `href='./assets/<file>'` in the example response to point at that route. The disk preview keeps working because the on-disk files are unchanged. Generated-By: looper 0.4.0 (runner=fixer, agent=claude-code) * feat(landing-page): add new static Next.js 16 site for Open Design marketing - Introduced a new landing page application using Next.js 16, featuring a static export setup. - Added essential files including `package.json`, `next.config.ts`, and TypeScript configuration. - Implemented global styles in `globals.css` to match the Atelier Zero design system. - Created a detailed `AGENTS.md` for module-level boundaries and purpose. - Included various image assets for the landing page, ensuring a visually cohesive experience. - Established a root layout and main page structure to support the marketing content. * style(landing-page): enhance topbar layout and improve responsiveness - Added nowrap styling to topbar elements to prevent text overflow. - Introduced media query to hide mid text in the topbar for screen widths between 1200px and 1280px. - Updated layout.tsx to suppress hydration warnings for better rendering consistency. - Removed redundant "Compiled by Open Design" text from the page component. * feat(landing-page): implement scroll-reveal animations for enhanced user experience - Added a new `RevealRoot` component to manage scroll-triggered reveal animations. - Updated `globals.css` with styles for elements using the `data-reveal` attribute, including opacity, translation, and scaling effects. - Modified `layout.tsx` to include the `RevealRoot` component for managing animations. - Enhanced `page.tsx` by adding `data-reveal` attributes to various elements for staggered reveal effects. - Implemented reduced motion support to ensure accessibility for users with motion sensitivity. * fix(landing-page): update import paths and enhance link styles - Changed the import path in `next-env.d.ts` to reference the correct routes type definition. - Enhanced `globals.css` with new styles for topbar links, work cards, and partner elements, improving hover effects and transitions. - Updated `page.tsx` to include canonical project URLs and made various links point to these URLs for better navigation and accessibility. * feat(landing-page): implement headroom-style sticky header with live GitHub star count - Introduced a new `Header` component to manage sticky navigation behavior on scroll, enhancing user experience. - Updated `globals.css` to style the sticky header, including transitions and visibility toggling based on scroll direction. - Modified `page.tsx` to replace the static header with the new `Header` component, which fetches and displays the live GitHub star count. - Ensured accessibility by providing a fallback for users who prefer reduced motion. * feat(landing-page): enhance editorial landing page with global ticker and new styles - Updated `next-env.d.ts` to reference the correct routes type definition for development. - Enhanced `globals.css` with new styles for the global ticker, including responsive design and improved overflow handling. - Introduced a new `WIRE_CITIES` and `WIRE_CONTRIBS` data structure in `page.tsx` to display a counter-scrolling marquee of cities and contributors. - Added a ghost button style for the navigation call-to-action in the header. - Updated various sections in `page.tsx` to integrate the new ticker and improve overall layout and accessibility. * refactor(landing-page): update paper texture overlay and remove multica-ai link - Enhanced comments in `globals.css` to clarify the purpose and behavior of the paper texture overlay. - Adjusted z-index of the overlay to ensure proper layering with other elements. - Removed the `multica-ai` partner link from `page.tsx` to streamline the partner section. * feat(landing-page): implement dynamic contributor marquee with GitHub integration - Added a new `Wire` component to display a counter-scrolling marquee of cities and contributors. - The contributor list is fetched live from the GitHub API, ensuring up-to-date information. - Updated `page.tsx` to integrate the `Wire` component, replacing the static contributor list with dynamic content. - Enhanced comments for clarity regarding the functionality and purpose of the global wire. * fix(i18n): add German display copy for editorial-collage-deck skill The Validate workspace test asserts that GERMAN_CONTENT_IDS.skills covers every curated skill on disk; the new editorial-collage-deck skill was missing from DE_SKILL_COPY, causing src/i18n/content.test.ts to fail. Generated-By: looper 0.4.0 (runner=fixer, agent=claude-code) * feat(landing-page): migrate marketing site to Astro * perf(landing-page): remove React client runtime * perf(landing-page): serve images from Cloudflare resizing * fix(pr): address landing page review feedback --------- Co-authored-by: mrcfps <mrc@powerformer.com>
7.4 KiB
| name | description | triggers | od | inputs | parameters | outputs | capabilities_required | example_prompt | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| editorial-collage-deck | Produce a single-file slide deck in the Atelier Zero visual language (warm-paper background, italic-serif emphasis spans, coral terminating dots, surreal collage plates). The deck uses scroll-snap pagination, arrow-key + space navigation, a live HUD with slide counter and progress bar, and inherits the canonical stylesheet + 16-slot image library from the sister `editorial-collage` skill. |
|
|
|
|
|
|
Build me an 11-slide pitch deck for "Lumen Field", a focus-soundscape studio. Cover with hero plate, two section dividers, two product content slides with bullets, a stats slide showing 12 soundscapes / 4 presets / 1 daily ritual, a customer quote, a closing CTA, and an end card. Reuse the editorial-collage image library. |
editorial-collage-deck
Sister skill to editorial-collage. Same
Atelier Zero visual system (warm paper, Inter Tight + Playfair Display,
italic-serif emphasis, coral dots), but paginated as a slide deck
instead of a long landing page.
inputs.json + ../editorial-collage/styles.css
│
└──────────► scripts/compose.ts
│
▼
<out>/index.html
(one viewport per slide, scroll-snap)
What you get
- A single self-contained HTML file with N viewport-height slides.
- Keyboard navigation: ←/→ · ↑/↓ · PageUp/PageDown · Space · Home/End.
- HUD top bar: brand mark, deck title, key hint, live slide counter.
- Coral progress bar at the bottom that fills as you advance.
- Scroll-snap pagination with
scroll-snap-stop: alwaysso each slide settles cleanly. - Reuses the same 16-slot image library as the sister skill — no duplicate assets.
Slide types
| Kind | Use it for |
|---|---|
cover |
Title plate at the start. 2-column copy + collage art. |
section |
Roman-numeral divider between chapters. Centered, full-bleed. |
content |
Eyebrow + title + body + bullets + optional collage art. |
stats |
Up to 4 large stat cells (value · label · sub-label). |
quote |
Pull quote + author. Optional portrait collage on the right. |
cta |
Closing pitch + 1-2 buttons. |
end |
Mega italic-serif kicker word + signature footer. |
A typical 11-slide pitch:
1. cover — title plate, hero collage
2. section — "I. The problem"
3. content — about / manifesto, bullets
4. content — capabilities, bullets
5. stats — 4 numbers
6. section — "II. How it feels"
7. content — method, bullets
8. content — selected work
9. quote — customer testimonial
10. cta — primary + secondary action
11. end — mega kicker + signature
Workflow
1. Author inputs.json
Start from inputs.example.json (the Open
Design pitch deck). The brand block, image strategy, and assets path
mirror the sister skill — if you already filled out an
editorial-collage brief, copy brand and imagery over verbatim.
For each slide, pick a kind and fill the typed fields from
schema.ts. MixedText (sans-serif baseline + italic-serif
emphasis spans + coral terminating dot) is the same encoding used by
the sister skill — see its inputs.example.json for examples.
2. (Optional) generate or stub imagery
This skill does not ship its own image generator or placeholder
script — it shares the 16-slot library from editorial-collage. To
regenerate or stub:
# generate via gpt-image-2 (fal.ai)
FAL_KEY=... npx tsx ../editorial-collage/scripts/imagegen.ts ../editorial-collage/inputs.example.json --out=../editorial-collage/assets/
# or paper-textured SVG placeholders
npx tsx ../editorial-collage/scripts/placeholder.ts ../editorial-collage/assets/
Set your deck's inputs.imagery.assets_path to wherever those PNGs
live (default in the example: ../editorial-collage/assets/).
3. Compose the deck
npx tsx scripts/compose.ts inputs.json out/index.html
The composer reads inputs.json, loads the canonical Atelier Zero
stylesheet from ../editorial-collage/styles.css, layers deck-specific
rules (scroll-snap container, slide layout grid, HUD, keyboard nav)
on top, and writes one self-contained HTML file.
4. Self-check
- Open the HTML in a fresh browser tab; slide 1 (cover) shows
with HUD
01 / Nin the corner. - Press
→(or Space). Smoothly advances to slide 2 with02 / Nin the counter and the coral progress bar filling. - Press
End. Jumps to the final slide. - Press
Home. Returns to slide 1. prefers-reduced-motion: reduce(DevTools → Rendering): smooth scroll still works, but page transitions are instant.- Resize to 1080px and 640px. Slides stack appropriately; no horizontal scrollbar; HUD shrinks gracefully.
- Lighthouse: contrast AA, font-display swap, no layout shift.
Boundaries
- Reuse the sister skill's stylesheet. The composer reads
../editorial-collage/styles.cssat compile time. Do not maintain a duplicate copy here; if Atelier Zero tokens evolve, edit them once in the sister skill. - Reuse the sister skill's image library. No need to re-prompt or re-render — the same 16 plates work for both surfaces.
- Keep slides single-viewport. If a slide's content does not fit 100vh at 1280×800 it will overflow and feel cramped. Trim copy or split into two slides.
- Do not add a router. This is a single-file artifact. Multi-page decks are out of scope; for a multi-deck experience, render each deck separately and link from a parent index.
See also
editorial-collage— landing page sister skill.design-systems/atelier-zero/DESIGN.md— token spec.