Communitygithub.com

SrRusian/atomic-page-builder

Use ao compor uma página, visualização ou recurso a partir de componentes que já existem no sistema de design do projeto. Monta apenas o layout; nunca inventa novos átomos, moléculas ou organismos. Se um componente necessário estiver faltando, para e passa o bastão para a skill atomic-design.

O que é atomic-page-builder?

Esta skill é especializada em compor páginas, visualizações e funcionalidades utilizando exclusivamente componentes já existentes no sistema de design do projeto. Ela monta o layout extraindo valores de grids, gaps, padding e breakpoints a partir de fontes de design como Figma, especificações ou capturas de tela. A skill não cria novos componentes — se um átomo, molécula ou organismo necessário não existir, ela interrompe o trabalho e delega a criação para a skill complementar `atomic-design`. Suporta verificação em breakpoints móvel, tablet e desktop, validação de acessibilidade, e estados de carregamento, vazio e erro. Ideal para desenvolvedores que utilizam sistemas de design baseados em tokens e querem garantir fidelidade total ao design sem duplicar ou improvisar componentes.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/SrRusian/claude-toolkit/tree/HEAD/plugins/design-kit/skills/atomic-page-builder

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Construtor de Páginas Atômicas

Componha páginas a partir de componentes existentes. Esta skill monta; atomic-design cria.

Regras

FaçaNão faça
Importar componentes do sistema de designCriar novos átomos, moléculas ou organismos
Extrair valores de layout da fonte de design (Figma, especificação, mockup)Adivinhar grid, gaps ou padding
Usar estilos com escopo que leiam de tokensHardcodar valores (#333, 24px)
Corresponder exatamente ao design, incluindo comportamento responsivoArredondar valores ou adicionar "melhorias"
Usar apenas a biblioteca de componentes do projetoIncluir uma biblioteca de UI externa que o projeto não usa

Passagem para atomic-design

Mude para atomic-design quando:

  • um átomo, molécula ou organismo necessário não existir;
  • um novo token for necessário;
  • um valor de token tiver mudado no design e precisar ser atualizado primeiro.

Fluxo de trabalho

  1. Obter a especificação de layout. Se existir uma fonte de design (Figma via MCP, uma especificação, uma captura de tela), extraia dela grid, gaps, padding, margens e breakpoints. Se não existir, peça uma ou declare as suposições explicitamente. Anote sobrescritas específicas da página.
  2. Inventário. Liste os componentes que o projeto já possui (átomos, moléculas, organismos, templates) com suas props.
  3. Análise de lacunas. Mapeie cada região da página para um componente existente. Liste qualquer item não correspondido.
  4. Construir ou parar.
    • Tudo existe: componha a página, correspondendo à especificação 1:1.
    • Algo está faltando: pare, relate as lacunas e mude para atomic-design.
  5. Verificar. Compare com o design nas larguras de dispositivo móvel, tablet e desktop.

Padrão de página

/** Página Dashboard. Layout de: <link de design ou id do nó> */
import { DashboardLayout } from '@/design-system/templates/DashboardLayout';
import { Card } from '@/design-system/molecules/Card';
import { DataTable } from '@/design-system/organisms/DataTable';
import styles from './Dashboard.module.css';

export const Dashboard = () => (
  <DashboardLayout>
    <div className={styles.statsGrid}>
      <Card title="Receita">$12.450</Card>
    </div>
    <DataTable colunas={colunas} dados={dados} />
  </DashboardLayout>
);
.statsGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-4);
}
@media (min-width: 768px) {
  .statsGrid { grid-template-columns: repeat(3, 1fr); gap: var(--spacing-6); }
}

Adapte os caminhos de importação e a abordagem de estilização ao projeto.

Verificação

Renderize a página em um navegador real (playwright-cli) em 375, 768 e 1440px nos modos claro e escuro, leia o console e compare com a fonte de design. Verifique também ordem de cabeçalhos, pontos de referência, fluxo de teclado e estados de carregamento, vazio e erro.

Funciona com

NecessidadeSkill ou ferramenta
Componente ou token faltandoatomic-design (companheiro obrigatório)
Crítica ou polimento no nível da páginaimpeccable
Auditoria de acessibilidadefixing-accessibility, design:accessibility-review
Metadados da página, títulos, Open Graphfixing-metadata
Passagem para engenhariadesign:design-handoff

Regras extras

  • Componha nos slots do template; não acesse os internos de um componente nem sobrescreva seus estilos.
  • Estilos específicos da página se limitam a layout (grid, gaps, posicionamento); qualquer coisa visual pertence a um componente ou token.
  • Nunca copie e cole um componente para ajustá-lo; solicite uma variante através do atomic-design.
  • Passe conteúdo real e representativo (nomes longos, listas vazias, erros) ao verificar a página.
  • Defina o título do documento e um h1 por página.
  • Um arquivo de página contém apenas composição e conexão de dados; nenhuma lógica de UI reutilizável.

Referências

ArquivoLeia quando
references/design-source-extraction.mdExtrair valores de layout e escrever a especificação da página
references/inventory-and-gaps.mdInventariar componentes e encontrar lacunas
references/composition-patterns.mdLayouts, slots, estados de dados, ordem de importação

Checklist de saída

  • Valores de layout vêm da fonte de design, não de suposições
  • Comportamento responsivo corresponde ao design
  • Todas as importações vêm do sistema de design do projeto
  • Zero valores hardcodados
  • Zero novos componentes
  • Link do design documentado no arquivo da página

Habilidades Relacionadas