agentsclimarketplace

Atelier components

Skill luminary19/atelier/skills/atelier-components

Atelier - a premium, anti-slop frontend design skill suite for Claude Code: 11 skills + a deepdive knowledge base.

Install
npx -y skills add luminary19/atelier --skill atelier-components

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Atelier suite — turn the design system into real, accessible, production code. Scaffold a premium React/Next + Tailwind v4 + shadcn/ui project, wire the atelier-foundations tokens into shadcn's theme variables, install the best-in-class single-purpose components (Vaul drawer, Sonner toast, cmdk command palette, Tremor dashboards), set up Storybook, and assemble pages from a copy-paste premium section-block library (hero variants, bento, feature rows, pricing, nav, footer, dashboard shell, data tables, forms, empty states). Use whenever building/scaffolding a frontend project, implementing components or page sections, setting up shadcn/Tailwind, adding a drawer/toast/command-palette/charts, or assembling marketing or app UI. Default stack: React/Next + Tailwind v4 + shadcn — with a no-framework path (Basecoat / Franken UI) for vanilla HTML / Rails / Laravel / Django / Astro. Part of the Atelier suite.

SKILL.md

11.5 KB, as published. Nobody here has run it

Atelier — Component System & Build

Where the design system becomes shipping code. The goal: a coherent, accessible, premium component layer that inherits the tokens automatically (so the whole app looks designed, not assembled) and a library of section blocks that aren't the generic shadcn-default look.

Project memory: if ATELIER.md exists, read it first and honor its register, policies, and tokens (set up via /atelier init — the atelier router).

Inputs: tokens from atelier-foundations (Tailwind @theme + shadcn mapping); the Direction Doc's archetype/aesthetic; the nav model + flows + screen-states from atelier-ux; type from atelier-typography; layout from atelier-layout; motion from atelier-motion; charts from atelier-dataviz; UX writing (labels, errors, empty-state copy) from atelier-copy. Harden for production with atelier-harden, then always run atelier-perf-a11y before shipping. Default stack: React/Next + Tailwind v4 + shadcn/ui. Deep reference: references/fundamentals-deepdive.md (§9).

Data — atelier-data: current do/don't tables for the stack — scripts/search.py "<topic>" --stack nextjs|react|shadcn|vue and --domain react (RSC / Next 15 perf). An implementation cross-check, not a substitute for the section blocks + token wiring here.


The flow

  1. Scaffold (Next/Vite + Tailwind v4 + shadcn) → 2. Wire tokens → shadcn → 3. Install curated components for the hard parts → 4. Assemble pages from the block library → 5. Real assets (images, icons, copy) → 6. Storybook (if a real component library) → 7. Perf/a11y gate.

1. Scaffold

Set up the house stack. Full commands + components.json + cn()/cva in references/setup.md. Short version: Next.js (or Vite) + Tailwind v4 (@import "tailwindcss", CSS-first, no config file) + npx shadcn@latest init. Choose the primitive layer: Base UI (actively developed, MUI team, v1) or Radix (mature, broadest component set) — init supports both. shadcn copies component source into your repo (you own it), uses lucide icons, class-variance-authority for variants, cn() = twMerge(clsx(...)).

Or start from AI design→code (this stack is what they emit): v0 (image/Figma → shadcn+Tailwind, production-grade), Magic Patterns (prompt or pasted screenshot → React/Tailwind, matches an imported design system via Figma MCP/Storybook), Lovable / Bolt.new for full-stack/code-level. Always send the output through §5 assets + atelier-perf-a11y (de-template first).

2. Wire tokens → shadcn (the step that makes it look designed)

Point shadcn's semantic CSS variables at the atelier-foundations OKLCH tokens (the mapping block lives in foundations' tokens-and-output.md). This is what stops the project looking like every other shadcn site — the components inherit your color/radius/spacing instead of the defaults. Confirm --background/--foreground/--primary/--card/--muted/--border/--ring + --radius and the .dark block.

3. Install curated, best-in-class components

Don't hand-roll the hard interactive components — these win on feel + accessibility. Details + install + usage in references/curated-components.md:

  • Vaul — drawer / bottom sheet (mobile gesture physics). Sonner — toast (imperative toast()). cmdk — ⌘K command palette. Tremor — dashboard charts/KPIs. (shadcn wraps the first three.)
  • When to choose a batteries-included framework instead (MUI/Ant/Mantine for enterprise/data-heavy) is covered there too.

4. Assemble pages from the block library

This suite ships a premium section-block library so pages don't default to the generic look. Blocks are React + Tailwind v4 + shadcn, token-driven, responsive, accessible, with motion hooks for atelier-motion. Adapt them to the Direction Doc — don't paste verbatim.

  • Marketing blocks (references/blocks-marketing.md): hero variants (asymmetric, giant-type, split), bento feature grid, alternating feature rows, logo strip, pricing, testimonial, sticky/mobile nav, footer, CTA band.
  • App blocks (references/blocks-app.md): dashboard shell (sidebar/topbar), KPI/stat cards, data table, settings form + validated forms (react-hook-form + zod), tabs/segmented/pagination, command-palette integration, empty/loading states. (Charts/dashboards → atelier-dataviz.)

Compose with atelier-layout (grid/whitespace), atelier-typography (the type), atelier-motion (reveals/feedback). Every block carries the perf/a11y baseline; verify with atelier-perf-a11y.

Optional — ship the block library as an installable registry. The shadcn CLI installs from any registry, so Atelier's blocks/themes can be packaged for npx shadcn add @atelier/<item> (one command, auto-pulled deps) — see references/registry.md. This is a reuse convenience on the shadcn/app path; it does not replace the bespoke editorial globals.css default, and you still de-template to the Direction Doc.

5. Real assets — images & copy (stack-agnostic; do this, don't skip it)

A polished component layer with placeholder content still ships as slop. Real assets are part of the build, not an afterthought. (This applies to any stack — vanilla, React, anything.)

Icon system, the responsive image component (next/image / <picture>), CSS image treatment (duotone/scrim/grain), and the favicon/OG pipeline are in references/icons-and-imagery.md; the art-direction for them (icon/illustration language, imagery mood + treatment) is set in atelier-direction.

Images — generate first, never fake.

  • Image-gen first. Make section-specific assets — hero, product/UI shots, textures, OG image — on the Direction Doc's aesthetic (art-direct every prompt: palette, mood, accent, lighting, composition, negative space). On this machine that's /codex-imagegen (local Codex CLI, ChatGPT login, no API key). For a full premium page / hero comp — a one-image-per-section design reference, not a lone asset — use /codex-imagegen-taste (it adds the anti-slop taste layer and drives this same helper under the hood); for single one-off assets (one texture, a logo, an OG card) call the bare helper directly:

    $skills = if ($env:CLAUDE_CONFIG_DIR) { "$env:CLAUDE_CONFIG_DIR\skills" } else { "$env:USERPROFILE\.claude\skills" }
    & "$skills\codex-imagegen\scripts\codex-image.ps1" `
      -Prompt "<art-directed prompt on the Direction Doc aesthetic>" -OutDir ".\public\img" -Count 1 -Size 1536x1024
    

    Size ↔ aspect: 1536×1024 landscape (hero/feature), 1024×1536 portrait, 1024×1024 square; add -Transparent for logos / icons / cut-outs; -Edit in.png to refine an existing asset. Cost is ~30k tokens/image, so generate a deliberate handful (hero + a few section assets), never loop. Then optimize (required, or you trade a design Tell for a perf regression): downscale to display size, convert to WebP/AVIF, set width/height (CLS), loading="lazy" below the fold, real alt (alt="" if decorative). On a non-Windows box or without Codex, substitute any available image-gen (MCP/IDE) the same way.

  • Never div-based fake screenshots. Hand-built <div> dashboards / task lists / terminals / "product previews" are a Tell (see atelier-perf-a11y/references/anti-slop-preflight.md). Use a generated image, a real screenshot, a real mini-component, or editorial imagery — or leave a labelled TODO slot and say so.

  • Real logos for social proof — Simple Icons (https://cdn.simpleicons.org/{slug}/{color}) or a generated monogram for invented brands; logos only, no category labels; render in both themes.

  • Decorative imagery gets alt=""; meaningful imagery gets real alt. A pure-text "hero" is a placeholder.

Copy — author it, then audit it. (UX writing is owned by atelier-copy — labels, errors, empty-state and loading copy, confirmations; pull the patterns from there. The essentials inline:)

  • Write real copy to the brand voice; one register per page.
  • Copy self-audit before ship: re-read every visible string and cut/rewrite anything broken, ambiguous, or AI-cute (forced wordplay, mock-poetic micro-meta). No placeholder-as-label.
  • No fake-precise numbers (92%, 13.4 lb): real, explicitly-labelled mock, or cut.

6. Storybook (for real design systems)

If you're building a reusable component library (not a one-off page), set up Storybook 9 — isolated component dev + interaction tests (Vitest), a11y tests (axe across all stories), and visual regression. Setup in references/setup.md. Skip it for small one-off sites.

7. Harden, then gate

For anything production-bound, run atelier-harden first — real/empty/huge data, text overflow, i18n/RTL, per-status error states, double-submit/cleanup. A build that's only been seen with seed data on the happy path isn't done. Then run atelier-perf-a11y: keyboard + screen-reader pass, visible focus, contrast, Core Web Vitals, reduced motion — and the anti-slop / "AI Tells" check (div-faked assets, copy audit, eyebrow/CTA/ marquee Tells). shadcn/Radix/Base UI give you accessible primitives — but your composition (focus order, labels, color, motion, real assets) still has to pass. For a substantial/award build, escalate to atelier-review — the adversarial, multi-reviewer red-team of the finished build (no ultracode needed).


Operating principles

  • Tokens first, then components. A component layer that reads atelier-foundations semantics is what makes the whole app cohesive; hard-coded values are the #1 cause of "assembled, not designed."
  • You own the code (shadcn model). Customize freely; re-pull for upstream fixes.
  • Buy the hard parts (Vaul/Sonner/cmdk/Tremor) — they're better than hand-rolled and accessible.
  • Use the block library, then de-template it to the Direction Doc — never ship the default shadcn look.
  • Real assets, not placeholders. Generate images (image-gen-first) on the aesthetic; never div-fake screenshots; audit every visible string. Placeholder content is unfinished work, not a draft to ship.
  • Accessibility is composition, not just primitives. Verify with the gate.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.