
specsfy-specialist-react
Projetar, implementar e revisar interfaces React com composição, estado, efeitos, concorrência, acessibilidade, performance e testes. Use quando a tarefa envolve componentes React, hooks, context, forms ou renderização cliente; use também para decidir ownership de estado entre componente, context e biblioteca externa; não use para fronteiras server/client, cache ou routing de framework — aí use a skill Next.js; para a galeria de componentes visuais prontos, use react-ui-components.
- Installs
- 304
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/promovaweb/specsfy --skill specsfy-specialist-react- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads specsfy-specialist-react automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
React
Quando usar
- Acionar quando o pedido envolve componente, hook, context, formulário, lista, efeito ou estado em React puro (CRA, Vite, RSC-agnóstico).
- Acionar também para revisar por que um componente rerenderiza demais, por que um efeito roda em loop, ou como decidir onde um estado deve viver.
- Não acionar para decisão de Server vs Client Component, cache de dados ou
roteamento de framework; usar
$specsfy-specialist-nextjsnesse caso. - Não acionar para escolher ou adaptar uma biblioteca de componentes visuais
prontos; usar
$specsfy-specialist-react-ui-componentscom$specsfy-specialist-ui-designpara isso. - Combinar com
$specsfy-specialist-typescriptquando o componente expõe props públicas ou modela estado com union discriminada, e com$specsfy-specialist-web-accessibilitypara auditoria aprofundada de teclado e leitor de tela.
Fluxo
- Para uma tela ou formulário, ler
INTERFACE.mde a seção de interface da spec antes do código. Confirmar telas, fluxo de informação, campos, validações, padrão de abertura e estados. Se o material não existir, retornar ao$specsfy-specialist-ux-designe$specsfy-specialist-ui-design; não trocar uma interface pedida por endpoint ou componente vazio. - Confirmar versão do React, renderer, framework (se houver), convenções do
projeto e estratégia de testes já em uso. Quando a tela usar shadcn/ui,
identificar antes a base de primitives instalada, seguindo
$specsfy-specialist-shadcn-ui; nunca deduzir Radix ou Base UI pela aparência do componente. Se.specsfy/STACK.mdnão declarar React ou o projeto não tiver essa dependência, não inicie esta implementação: encaminhe ao especialista da stack observada. - Modelar os estados visíveis (nominal, loading, empty, error, stale, optimistic), os eventos que os produzem e quem é o dono de cada dado.
- Projetar a árvore de componentes com responsabilidades e props pequenas;
preferir composição (
children, slots) a um componente com dezenas de flags booleanas. - Manter cada estado no dono mais próximo capaz de resolvê-lo; derivar
valores durante o render em vez de sincronizar com
useEffect. - Usar effects apenas para sincronizar com um sistema externo (DOM, subscription, rede, storage) — nunca para computar algo a partir de props e state já disponíveis.
- Implementar semântica HTML e navegação por teclado antes do acabamento visual; então cobrir com teste de comportamento observável.
- Medir performance somente quando houver sintoma real (profiler, métrica de produção); então memoizar ou dividir o componente com medição registrada, não por precaução.
- Registrar em
INTERFACE.mdcada bloco criado, alterado ou reaproveitado: responsabilidade, arquivo, props, eventos, estados, acessibilidade e telas consumidoras.
Padrões
- Preferir composição a um componente genérico com muitas props de configuração; dividir quando a árvore de decisão interna cresce.
- Em Laravel com React, usar shadcn/ui para primitives e ReUI para composições
gratuitas. Página e rota compõem blocos React; grade, formulário, filtros,
overlays e cartões reutilizáveis são componentes próprios e documentados em
INTERFACE.md. - Nunca copiar uma prop para
statesó para "guardar o valor inicial"; isso cria dessincronia — leia a prop diretamente ou derive durante o render. - Não usar
useEffectpara computar um valor derivável de props/state existentes; use uma variável comum ouuseMemoquando o cálculo for caro. - Tornar loading, empty, error, stale e success estados explícitos da UI, não
branches implícitos de um único booleano
loading. - Usar
keyestável e vinda dos dados (id) em listas; nunca o índice do array quando a ordem pode mudar, item pode ser removido ou reordenado. - Isolar cada
Context.Providerpela frequência de mudança e responsabilidade — um context que muda a cada tecla não deve envolver a árvore inteira. - Não memoizar (
memo/useMemo/useCallback) sem medição prévia; memoização tem custo de comparação e só compensa com renders caros ou comprovadamente frequentes. - Testar pelo comportamento observável pelo usuário (texto, papel, estado), nunca por detalhes de implementação de hooks internos.
Antipadrões
- Efeito que sincroniza estado local com uma prop
(
useEffect(() => setX(prop), [prop])) — sintoma de estado duplicado; a fonte da verdade já é a prop. - Cadeia de effects que dispara outro effect via mudança de state ("effect chain") — geralmente colapsa em um único handler de evento ou em cálculo direto durante o render.
useEffectsem array de dependências completo, "silenciado" com// eslint-disable— esconde bug de closure obsoleta em vez de resolvê-lo.- Context único guardando todo o estado global da aplicação ("god context") — qualquer mudança rerenderiza toda a árvore; prefira contexts menores ou uma biblioteca de estado dedicada quando o grafo de dependências crescer.
- Confundir este escopo com o de
$specsfy-specialist-nextjs: adicionar"use client"em cascata para "resolver" um erro de hook, em vez de mover a interatividade para o componente folha correto.
Validação
- Percorrer a superfície alterada inteira por teclado e testar com leitor de tela quando houver papel, foco ou anúncio novo.
- Escrever testes para cada estado modelado no passo 2 do Fluxo (nominal, loading, empty, error, stale, optimistic) e para a recuperação de erro.
- Checar o console por warnings do React (chaves, hooks fora de ordem, atualização de estado após unmount) e por avisos de hydration quando houver SSR.
- Rodar profiling ou bundle analysis somente quando uma hipótese concreta de performance existir; anexar a medição antes/depois.
- Não declarar um componente "acessível" ou "performático" sem a comprovação acima; linguagem absoluta sem prova é proibida.
Skills relacionadas
$specsfy-specialist-reuipara composições React e Tailwind do catálogo gratuito.$specsfy-specialist-astrogoverna a fronteira da ilha e$specsfy-specialist-shadcn-uiidentifica a base de primitives e governa os componentes visuais; esta skill governa o comportamento React dentro deles.$specsfy-specialist-tailwind-cssestiliza o componente sem assumir ownership de estado, effect ou concorrência.$specsfy-specialist-nextjspara fronteira server/client, cache de dados e roteamento — este especialista trata React independente de framework.$specsfy-specialist-react-ui-componentse$specsfy-specialist-ui-designpara escolher e compor uma biblioteca visual pronta; este especialista entra depois, para ownership de estado, efeitos e testes.$specsfy-specialist-typescriptpara tipar props, estado e union discriminada de forma exaustiva.$specsfy-specialist-web-accessibilitypara auditoria aprofundada além do teclado básico validado aqui.
Leia references/standards.md para modelagem de estado, effects, composição, listas, context, testes e performance, com fontes oficiais.
FAQ
What does the specsfy-specialist-react skill do?
Projetar, implementar e revisar interfaces React com composição, estado, efeitos, concorrência, acessibilidade, performance e testes. Use quando a tarefa envolve componentes React, hooks, context, forms ou renderização cliente; use também para decidir ownership de estado entre componente, context e biblioteca externa; não use para fronteiras server/client, cache ou routing de framework — aí use a skill Next.js; para a galeria de componentes visuais prontos, use react-ui-components.
How do I install specsfy-specialist-react?
Run npx skills add https://github.com/promovaweb/specsfy --skill specsfy-specialist-react in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/specsfy-specialist-react/ (personal) or .claude/skills/specsfy-specialist-react/ (project).
Which AI agents can use specsfy-specialist-react?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is specsfy-specialist-react safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains specsfy-specialist-react?
It is published by promovaweb in promovaweb/specsfy. It has 304 recorded installs.
More from promovaweb/specsfy
specsfy-aux-stack
promovaweb/specsfy
Monitorar manifests e arquivos estruturais para criar ou atualizar .specsfy/STACK.md de forma aditiva. Use quando o monitor de contexto apontar stack pendente; quando framework, linguagem, runtime, pacote estrutural, ferramenta de teste ou persistência mudar; quando a documentação técnica estiver incompleta; ou após adicionar Laravel, Next.js, Astro ou dependências relevantes. Preserva conteúdo humano existente.
specsfy-specialist-data-modeling
promovaweb/specsfy
Modelar dados, entidades, relações, ciclos de vida, qualidade e contratos persistentes antes de implementar mudanças.
specsfy-specialist-software-architecture
promovaweb/specsfy
Analisar e evoluir arquitetura com boundaries, dependências, atributos de qualidade, integrações, ADRs, migração e trade-offs. Use para modularização, coupling, escalabilidade, resiliência ou decisões difíceis de reverter; não use para renomeação local sem impacto estrutural.
specsfy-specialist-domain-modeling
promovaweb/specsfy
Descobrir e refinar linguagem de domínio, invariantes, eventos, aggregates e boundaries a partir de cenários concretos. Use quando termos, regras ou ownership estiverem ambíguos ou uma decisão de modelo for necessária; não criar documentação paralela à fonte autorizada.
specsfy-specialist-reui
promovaweb/specsfy
Criar interfaces React e Tailwind CSS com os componentes gratuitos do ReUI. Use em projetos com React, Tailwind CSS e shadcn/ui, incluindo Laravel com Inertia; não use itens premium nem introduza ReUI sem confirmar a stack.
specsfy-setup
promovaweb/specsfy
Preparar e monitorar os contextos do projeto, incluindo a constituição e as specs preservadas de projetos com GitHub Spec Kit.
Popular frontend & design skills
setup-matt-pocock-skills
mattpocock/skills
Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.
frontend-design
anthropics/skills
Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.
hyperframes-animation
heygen-com/hyperframes
All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.
prototype
mattpocock/skills
Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.
hyperframes-core
heygen-com/hyperframes
The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.
vercel-react-best-practices
vercel-labs/agent-skills
React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.