Communitygithub.com

wireframes

Use ao propor ou comparar mudanças de UI para o usuário decidir — após uma crítica de design, auditoria de UX ou interação, revisão de design, durante brainstorming de uma tela ou fluxo, ao ponderar opções de UI, esboçar uma tela que ainda não existe, ou organizar estados vazio, carregamento, erro e largura de telefone. Também quando o usuário pergunta como uma tela ou layout proposto ficaria. Não para ajustes de cor, contraste ou tipografia, ou para mudanças de UI que o usuário já decidiu e pediu para você implementar.

O que é wireframes?

Este skill transforma propostas de UI em wireframes visuais de baixo custo. Em vez de descrever mudanças com texto, ele gera um único arquivo HTML auto-contido que mostra o estado 'Agora' ao lado do 'Proposto', usando barras cinzas para elementos inalterados e rótulos reais apenas nos componentes em discussão. O resultado é uma imagem que o usuário entende instantaneamente, sem reproduzir cores da marca, fontes reais ou fidelidade de pixels — e o custo em tokens é mínimo. O skill é útil para desenvolvedores e designers que precisam tomar decisões rápidas sobre layout, fluxo ou controles após revisões de design, auditorias de UX ou sessões de brainstorming. Ele suporta qualquer plataforma onde o usuário interaja com propostas visuais, incluindo Claude Code, Cursor e Codex, e funciona como um guia prático para estruturar a comunicação das mudanças. A saída segue regras precisas: cada seção representa uma mudança com um layout específico (par, opções, solo ou faixa), elementos são marcados com classes CSS (`.bad` para problemas, `.good` para melhorias), e o arquivo é salvo em `docs/mockups/`. O skill também inclui verificações automáticas para garantir que os wireframes estejam corretos antes de serem exibidos, além de um formato de entrega padronizado que lista decisões pendentes.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/falconair/wireframes/tree/HEAD/skills/wireframes

Perguntar na sua IA favorita

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

Documentação

O que wireframes faz?

Visão geral

Uma proposta de UI é uma imagem, não uma página de prosa. Desenhe cada mudança como um wireframe barato: o Agora ao lado do Proposto, barras cinzas para tudo que permanece igual, rótulos reais apenas nos elementos em discussão e uma frase de porquê. Ele não reproduz a aparência real do aplicativo: sem cores da marca, sem fontes reais, sem fidelidade de pixels. O usuário vê a mudança de relance, e desenhá-la custa poucos tokens.

Quando não usar: a mudança é puramente visual (cor, contraste, fontes, tokens de espaçamento) — descreva-a ou mostre CSS real. Ou o usuário já decidiu e pediu para você implementar, então implemente. Ou nada sobre layout, controles ou fluxo muda.

A saída

Um único arquivo HTML auto-contido, construído assim:

  1. Caminho: docs/mockups/YYYY-MM-DD-<topico>.html no projeto, para que os mockups fiquem junto com o código e possam ser commitados. Se o projeto já mantiver mockups em outra pasta mockups/, use essa.
  2. Head: copie tudo de <!doctype html> até </style></head><body> em kit.html literalmente. Altere apenas <title>. Use apenas classes do kit. style inline é para tamanho e espaçamento (width, height, margin, a posição de um .menu), nunca cor.
  3. <h1> e uma linha .lede.
  4. Uma seção por mudança: <h2>N · resultado nas palavras do usuário</h2>, depois um layout:
SituaçãoLayoutRótulos
Algo existe e deve mudar.pair: Agora, depois Proposto.lbl.b "Agora: o que há de errado" · .lbl.g "Proposto: o que muda"
A correção não está decidida.opts: 2-3 opções, com um pequeno .solo Acima quando a coisa existe.lbl.o "A · nome (recomendado)"; .why "+ ganho · − custo"
Nada existe ainda.solo: apenas Proposto.lbl.g; chamadas .n numeradas explicadas em .why
Um elemento em estados ou larguras.strip: um quadro por estado.lbl "Vazio", "Carregando", "Erro", "Telefone"…; no máximo um .why abaixo da faixa
  1. Cada lado de um .pair, e cada opção, recebe um rótulo (no máximo 10 palavras), seu quadro ou quadros, e uma frase .why. Use dois quadros em um lado quando a mudança é uma sequência (menu, depois o toast após ele).

Leia kit.html uma vez: abaixo do CSS ele tem um exemplo prático de cada layout e um índice de todas as classes.

Regras de desenho

  • Texto real apenas onde a decisão está: o controle alterado, seus vizinhos imediatos e o nome do aplicativo ou breadcrumb para orientação. Todo o resto é .box (linha de texto, defina width), .img (imagem ou gráfico) ou uma .row de barras cinzas.
  • Marque o único controle que muda: .bad (tracejado vermelho) no problema no Agora, .good (sólido verde) na mudança no Proposto e no que diferencia cada opção. Não marque nada em uma .strip. Contorne o controle, nunca uma barra de largura total ou um quadro inteiro, pois quadros cortam contornos nas bordas.
  • Algo faltando: desenhe um slot tracejado vazio onde ele pertence (<span class="in bad">sem busca aqui</span>), não um contorno em um elemento próximo.
  • Caber cerca de 800px: cada coluna de .pair tem cerca de 380px, então mantenha uma .bar em cerca de 5 itens.
  • Tipo de aplicativo: web ou desktop → .f; telas estreitas ou mobile nativo → .phone; terminal UI → .f.mono.pad com linhas de texto reais e barras cinzas para saída inalterada.
  • Perguntas em aberto vão no .why daquele lado, formuladas como pergunta.
  • Orçamento: no máximo cerca de 15 KB por arquivo. Uma seção com mais de cerca de 1,5 KB está desenhando conteúdo sobre o qual ninguém está decidindo — troque esse conteúdo por barras cinzas.

Verifique antes de mostrar

Se uma ferramenta de navegador que possa capturar tela estiver disponível, abra o arquivo e olhe. No aplicativo de desktop Claude, isso significa mcp__Claude_Browser__preview_start com url: file://<caminho absoluto>, depois mcp__Claude_Browser__computer com ação screenshot. Se o navegador recusar o arquivo local, trate a página como não visualizada (veja abaixo). Verifique se cada contorno está no elemento pretendido, se nada está cortado ou quebrado, e se sobreposições não escondem o que explicam. Corrija, depois olhe novamente.

Sem ferramenta de captura de tela (CLI, headless, subagente), releia a marcação contra essas verificações e diga na entrega que a página não foi visualizada.

Entregue

No chat, escreva apenas:

  • o arquivo como um link markdown relativo à raiz do projeto;
  • uma linha por seção: número, título e estado ("pronto", "escolha A/B/C", ou a pergunta em aberto);
  • as decisões que você precisa: uma frase cada, sua escolha e o único motivo principal.

Os desenhos e suas linhas .why carregam os detalhes e as compensações, então não os descreva novamente. Aguarde as escolhas do usuário antes de implementar. Sem um usuário para perguntar (subagente, headless), retorne as mesmas três coisas e pare.

Erros comuns

ErroEm vez disso
Rotular todo elementoRotule apenas o que a decisão toca
Reestilizar para combinar com o aplicativoCSS do kit literalmente; barras cinzas
Um parágrafo por desenho no chatLink, uma linha por seção, decisões

Habilidades Relacionadas