Create a React component using the Container/Presentation pattern in src/components by asking for the component name and type (ui or features), then scaffold files that follow this repository's TypeScript, Storybook, and SCSS conventions. Use when the user explicitly asks for a Container/Presentation-based component or runs /react-container-presentation-component.
Use this skill to create a React component under src/components that follows the Container/Presentation pattern.
Refer to this skill's bundled references for detailed rules.
references/component-architecture.mdreferences/typescript-and-scss-rules.mdIf the /react-container-presentation-component input is incomplete, ask questions first before creating files.
/react-container-presentation-componentui vs features classification within the Container/Presentation patternIf any of the following information is missing, ask the user using ask_user.
ui or features)ui)Question requirements:
ui, features)ui, ask whether direct usage of Mantine or other UI libraries in existing features should be replaced with the new componentsrc/components/ui/<ComponentName> or src/components/features/<ComponentName> already exists.ui: src/components/ui/<ComponentName>features: src/components/features/<ComponentName>ui is specified)ui is specified, before creating files, review Reclassification Rule in references/component-architecture.md.features.features, do not proceed as ui; use ask_user and confirm one of the following before continuing.
Create as featuresKeep ui and move state/logic to parent or featuresui: index.tsx, index.module.scss, index.stories.tsxfeatures: index.tsx, use<ComponentName>.tsx, presentation.tsx, types.ts, presentation.module.scss, presentation.stories.tsxui)features with the new ui component.Storybook Minimum in references/component-architecture.md for story state decisions.ask_user whether to run a Storybook check (for example: "Run" / "Skip for now").npm run storybook only if the user selects "Run".ui or features.Copy a source-pinned command for your client. You run it yourself.
Destination: .claude/skills/react-container-presentation-component · pinned to the source commit
# Run from your project root
git clone https://github.com/github/awesome-copilot.git .skillboard-tmp
git -C .skillboard-tmp checkout f11a4e441c5ff061b4f8ae37952be8c602e4034e
mkdir -p ".claude/skills"
cp -r ".skillboard-tmp/skills/react-container-presentation-component" ".claude/skills/"
rm -rf .skillboard-tmpReview the source before running. This copies files into your project; it is not a one-click install and does not verify runtime safety.
sudo apt update && sudo apt install -y gitnpm install -g @anthropic-ai/claude-code# Run from your project root
git clone https://github.com/github/awesome-copilot.git .skillboard-tmp
git -C .skillboard-tmp checkout f11a4e441c5ff061b4f8ae37952be8c602e4034e
mkdir -p ".claude/skills"
cp -r ".skillboard-tmp/skills/react-container-presentation-component" ".claude/skills/"
rm -rf .skillboard-tmpDestination: .claude/skills/react-container-presentation-component
Scanner static-checks@0.1.0 · commit f11a4e441c5f. Static checks cannot prove runtime safety – review the source and the exact diff before installing. How checks work.
No static rules matched. This is not a safety guarantee.