Agent skill
styled-jsx-component
Create or refactor a React functional component styled with styled-jsx (<style jsx>). Use for scoped component styles, including variants, theming via CSS variables, and accessible UI patterns.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/styled-jsx-component
SKILL.md
styled-jsx Component Skill (React Functional Components)
You are creating or refactoring a React FUNCTIONAL component that uses styled-jsx for styling.
Inputs
- $ARGUMENTS may include a component name and a short intent/variant description.
Non-negotiables
- Functional component only (no class components).
- Prefer semantic HTML and accessibility by default:
- Correct element choice (button/a/input/etc)
- Keyboard support
- aria-* only when needed
- Use styled-jsx {
...} for component-scoped CSS. - Keep styling maintainable:
- Prefer CSS variables for theming/tokens
- Avoid overly-specific selectors
- Avoid styling through DOM structure that will change easily
- Variants:
- Prefer a single "variant" prop (string union) over many booleans.
- Use data attributes (e.g., data-variant) for styling hooks.
- Dynamic styling:
- Prefer className toggling or CSS variables for runtime values.
- Use template literal interpolation only when it’s necessary and safe.
- SSR/Next.js considerations:
- styled-jsx is SSR-compatible; do not use browser-only APIs during render.
Output expectations
- Create/modify files per template.md.
- Provide:
- Component implementation
- Minimal test (render + primary interaction + a11y)
- Storybook story (basic variants)
- Short usage snippet
Best-practice patterns to apply
- Tokens:
- Use CSS vars like --color-fg, --color-bg, --radius, --space-2.
- Provide sensible defaults in :root only when asked; otherwise keep tokens local to the component with fallback values.
- Prefer:
- :global(...) only for one-off escape hatches
- data-* attributes for styling states (data-state, data-variant)
- Avoid:
- Global leakage
- Deep descendant styling
- Interpolating untrusted strings into CSS
Use the accompanying template.md as the default structure; deviate only when the component needs a different intrinsic element type or ref pattern.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?