skills/react-container-presentation-component/SKILL.md
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.
npx skillsauth add williamlimasilva/.copilot react-container-presentation-componentInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
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.development
Anxiety-aware, evidence-driven collaboration for stalled or high-stakes work when a user says uncertainty, repeated setbacks, or lack of visible progress is causing significant anxiety or distress. Use immediately when explicitly invoked; when this fit is only inferred from the user's own account, ask permission before applying it. Preserve the user's ideal and turn grounded perspective-taking into persistent, bounded problem solving. Do not use to diagnose, provide therapy, manufacture certainty, or lower goals for reassurance.
development
Build, review, debug, package, and test Roslyn diagnostic analyzers, code fix providers, and incremental source generators. Use for DiagnosticAnalyzer, CodeFixProvider, IIncrementalGenerator, IOperation analysis, Microsoft.CodeAnalysis dependency pinning, Roslyn test harnesses, C#/VB tests, and analyzer NuGet packaging.
testing
Migrates a project that uses checked-in .designer.cs files behind .resx to using a source-generator instead
development
Polish any GitHub repository's surface — labels (emoji rating tiers, P0–P3 priority, impact severity), issue forms, PR template, CI workflows, CODEOWNERS, rulesets, docs. Repo meta & config only — no code logic touched. Use when creating a new repo or polishing an existing one.