Options Reference

All CLI prompts, flags, and commands.

Commands

CommandDescription
npx create-scn-stackScaffold a new registry project
npx create-scn-stack initAdd a registry to an existing project
npx create-scn-stack add-component <name>Add a component to an existing registry
npx create-scn-stack add-hook <name>Add a hook to an existing registry
npx create-scn-stack add-block <name>Add a block to an existing registry
npx create-scn-stack add-theme <name>Add a theme to an existing registry
npx create-scn-stack add-file <name>Add an arbitrary file item (conventions, CI, agent instructions)
npx create-scn-stack remove <name>Remove an item (source + registry + docs)
npx create-scn-stack listList everything in the registry
npx create-scn-stack buildBuild the registry output (public/r/)
npx create-scn-stack ejectInline shadcn/tailwind.css, drop the shadcn dependency

Prompts

When you run npx create-scn-stack, you'll be guided through these options:

PromptDescriptionDefault
Registry nameIdentifier for your registry (e.g., my-ui)my-ui
Project locationFolder to create the registry in./<registry-name>
DistributionHosted (build + host) or GitHub source registryHosted
GitHub repoowner/repo slug (GitHub target only, optional)<owner>/<name>
Styleshadcn/ui style variantNew York
HomepageURL where the registry will be hostedhttps://<name>.com
FrameworkWeb framework for the project (hosted only)Next.js
DocumentationDocs engine to includeFumadocs
Starter componentsPre-built example componentsButton, Card, Badge
NamespaceRegistry namespace for @name/component installs@<name>
Package managerPackage manager to useAuto-detected
AI skillsInstall shadcn skill + registry skillYes

Flags

All prompts can be pre-filled via flags. Use --yes to skip prompts entirely.

npx create-scn-stack my-ui --yes
npx create-scn-stack my-ui --framework nextjs --docs fumadocs --pm pnpm
npx create-scn-stack my-ui --yes --no-skills
FlagValues
--name <name>Registry name
--directory <path>Project location
--style <style>new-york | default
--homepage <url>Registry homepage URL
--target <target>hosted | github (default: hosted)
--github [owner/repo]Shorthand for --target github — see GitHub registries
--github-slug <slug>owner/repo for GitHub source registries
--framework <fw>nextjs | vite | react-router | tanstack-start
--docs <engine>fumadocs | mintlify | starlight | none
--components <set>essentials | minimal | none
--namespace <ns>Namespace (e.g., @my-ui)
--pm <pm>pnpm | npm | yarn | bun
--skillsInclude AI skills
--no-skillsSkip AI skills
-y, --yesSkip all prompts, use defaults
-h, --helpShow help

add-component

Add a component to an existing registry project:

npx create-scn-stack add-component input
npx create-scn-stack add-component dialog -d "A modal dialog component."

This creates:

  • Component source in registry/<style>/ui/<name>.tsx
  • Entry in registry/<style>/ui/registry.json (detects include pattern)
  • Doc page in content/docs/components/<name>.mdx
  • Updates meta.json navigation
FlagDescription
--description, -dComponent description

add-hook

Add a hook to an existing registry project:

npx create-scn-stack add-hook use-toggle
npx create-scn-stack add-hook use-media-query -d "A media query hook."

This creates:

  • Hook source in registry/<style>/hooks/<name>.ts
  • A registry/<style>/hooks/registry.json (created if needed)
  • Updates root registry.json include array to reference hooks registry
  • Doc page in content/docs/hooks/<name>.mdx
  • Updates meta.json navigation

Hook names must start with use-.

FlagDescription
--description, -dHook description

add-block

Add a block to an existing registry project:

npx create-scn-stack add-block login-form
npx create-scn-stack add-block dashboard-header -d "A dashboard header block."

This creates:

  • Block source in registry/<style>/blocks/<name>.tsx
  • A registry/<style>/blocks/registry.json (created if needed)
  • Updates root registry.json include array to reference blocks registry
  • Doc page in content/docs/blocks/<name>.mdx
  • Updates meta.json navigation
FlagDescription
--description, -dBlock description

add-theme

Add a distributable theme to an existing registry project:

npx create-scn-stack add-theme midnight
npx create-scn-stack add-theme sunset -d "A warm, high-contrast theme."

This creates:

  • Theme CSS in registry/<style>/themes/<name>.css (light + dark tokens)
  • A registry/<style>/themes/registry.json (created if needed)
  • Updates root registry.json include array to reference the themes registry
  • Doc page in content/docs/themes/<name>.mdx
  • Updates meta.json navigation

Themes are registered as theme-<name> (matching shadcn convention), so a theme named midnight installs with npx shadcn add @you/theme-midnight.

FlagDescription
--description, -dTheme description

remove

Remove an item from an existing registry project. This is the full reverse of any add-* command:

npx create-scn-stack remove button
npx create-scn-stack remove use-toggle --yes

It finds the item across the root registry and any included per-directory registries, then:

  • Deletes the item's source file(s)
  • Removes the entry from the relevant registry.json
  • Deletes the matching doc page and prunes it from meta.json

By default it prints exactly what will be deleted and asks for confirmation. Pass --yes to skip the prompt (useful in scripts).

FlagDescription
-y, --yesSkip the confirmation prompt

list

List everything registered in the current project, grouped by kind:

npx create-scn-stack list
npx create-scn-stack list --type hook
npx create-scn-stack list --json

--json prints a machine-readable array (name, type, title, description) and suppresses all branding — ideal for piping into other tools.

FlagValues
--type, -t <type>ui | hook | block | theme
--jsonOutput machine-readable JSON

build

Build the registry output to public/r/:

npx create-scn-stack build

A convenience passthrough that runs your project's registry:build script (or shadcn build directly if no script is defined). The package manager is detected from the project's lockfile.

Framework Options

FrameworkDescription
Next.jsApp Router with Tailwind v4. Recommended for most registries.
ViteReact + Vite with Tailwind v4. Lightweight, fast builds.
React RouterReact Router v7 with SSR support.
TanStack StartTanStack Start with file-based routing.

Docs Engine Options

EngineDescription
FumadocsStandard for shadcn registries. Full docs with MDX, search, dark mode. Requires Next.js.
MintlifyHosted docs platform. Works with any framework.
StarlightAstro-based docs. Separate docs/ directory. Works with any framework.
NoneRegistry only, no documentation site.

Style Options

StyleDescription
New YorkDefault shadcn/ui style. Smaller, compact components.
DefaultOriginal shadcn/ui style. Slightly larger components.

Starter Components

SetComponentsIncludes
EssentialsButton, Card, BadgeSource files, registry entries, doc pages with live previews
MinimalButton onlySource file, registry entry, doc page with preview
NoneEmpty registryJust the scaffold, add your own

AI Skills

SkillWhat it does
shadcn skillInstalls the official shadcn skill via skills add shadcn/ui. Gives AI assistants knowledge of shadcn components, CLI, theming, and registry authoring.
Registry skillGenerates .agents/skills/registry/SKILL.md — teaches AI how to add components, hooks, blocks, write docs, update registry.json, and follow conventions for your specific project.