O que aestra faz?
Um agente de design para produzir UI/UX limpa, polida e pronta para produção em web, mobile e desktop (Windows / macOS / Linux). Funciona de duas maneiras:
- Greenfield — criar um novo site, aplicativo web, aplicativo mobile ou aplicativo desktop.
- Redesign — pegar uma interface existente e elevá-la a um padrão moderno e coerente.
O objetivo não é "deixar bonito". O objetivo é um sistema de design coerente — tokens, componentes, estados, movimento e acessibilidade — que pareça intencional em cada plataforma e que escale conforme o produto cresce.
Quando usar
Invoque esta habilidade sempre que a tarefa for sobre como o software parece e se sente:
- Construir uma nova UI: landing page, dashboard, aplicativo SaaS, app mobile, app desktop.
- Redesenhar / modernizar / reestilizar uma UI ou componente existente.
- Criar ou estender um sistema de design, tema, tokens ou biblioteca de componentes.
- Corrigir problemas de polimento: espaçamento inconsistente, hierarquia fraca, movimento agressivo, modo escuro ruim, acessibilidade.
- Explorar múltiplas direções de design antes de se comprometer com uma.
Não use para trabalho puro de backend, dados ou infraestrutura sem superfície de UI.
O método C.R.A.F.T.
Esta habilidade opera em um método original de cinco etapas — C.R.A.F.T. — que transforma qualquer solicitação de design em um sistema coerente e pronto para entrega. Cada fase possui um arquivo de referência proprietário.
| Etapa | Nome | O que acontece | Referência |
|---|---|---|---|
| C | Contexto | Definir o produto, público, plataforma, stack e restrições antes de desenhar qualquer coisa. | diretrizes-de-plataforma.md |
| R | Ritmo | Construir a fundação de tokens — cor, tipo, espaço, raio, elevação. Uma escala, sem números mágicos. | principios-de-design.md |
| A | Arquitetura | Estruturar tokens → primitivas → componentes → padrões → telas com uma API de componente limpa. | sistema-de-design.md |
| F | Sensação | Adicionar movimento, estados e feedback de interação que expliquem a hierarquia — nunca decoração. | movimento-e-interacao.md |
| T | Teste | Endurecer: contraste, responsivo, temas, estados, acessibilidade, desempenho, paridade entre plataformas. | fluxo-de-trabalho-e-check-list.md |
Para trabalho greenfield, execute C→R→A→F→T. Para um redesign, execute C-Contexto primeiro no produto existente, em seguida T-auditoria antes de R/A/F para saber exatamente o que preservar.
Filosofia central
- Nomeie o gosto primeiro. Cada construção se compromete com uma direção de design explícita (editorial/suíço, neo-grotesco, terminal, brutalista, suave/tátil). Nunca faça a média de tudo em um modelo genérico. Veja anti-visual-ia.md — esta é a diferença entre "projetado" e "gerado por IA".
- Tokens de design em vez de valores hard-coded. Nunca espalhe códigos hexadecimais brutos, números de pixel mágicos ou sombras ad-hoc através dos componentes. Tudo referencia um token.
- Explore antes de se comprometer. Para qualquer tela não trivial, gere 2–3 direções distintas primeiro (varie layout, densidade, escala de tipo, temperatura de cor), depois converja para uma. Uma opção é um palpite; três opções é uma decisão.
- Movimento é significado, não decoração. Anime para explicar hierarquia, mudança de estado e
relações espaciais — nunca para se exibir. Contido, rápido, interrompível e respeitoso com
prefers-reduced-motion. Padrão sem animação de entrada: o conteúdo é visível imediatamente; não adicione scroll-reveal/stagger/parallax a menos que comunique informações reais. - Edite a decoração. Todo ponto, estrela, seta, separador, badge, estatística e rótulo deve carregar significado. Se estiver lá apenas para fazer o design parecer "projetado", remova-o.
- Honre referências visuais. Extraia sua hierarquia, tipo, espaço em branco, paleta, controles e movimento. Não invente marcas, destaques, metadados ou efeitos que a referência não pede.
- Todo estado é projetado. Padrão, hover, foco, ativo, desabilitado, carregando, vazio, erro e sucesso são todos parte do componente — não pensados depois.
- Acessível por padrão. Contraste, anéis de foco, alvos de toque, semântica e fluxos de teclado são incorporados, não adaptados.
- Nativo da plataforma onde importa. Respeite as convenções iOS/Android/Material e Windows(Fluent)/macOS(HIG) para navegação, controles e gestos — mantendo a marca consistente.
Fluxo de trabalho
Siga estas fases. Pule fases apenas quando a tarefa for genuinamente trivial.
1. Entender (não pule)
Estabelecer: produto e público, tarefa principal do usuário, plataforma(s) & stack de tecnologia, restrições de marca, assets/sistema de design existentes e critérios de sucesso. Se o pedido for vago, faça no máximo 3 perguntas precisas — ou declare suas suposições explicitamente e prossiga.
2. Escolher a arquitetura
Decida a plataforma alvo e a stack antes de projetar, porque isso dita os tokens e componentes. Veja diretrizes-de-plataforma.md e sistema-de-design.md.
- Web → HTML/CSS ou React/Next + Tailwind + propriedades personalizadas CSS; Motion para animação.
- Mobile → React Native / Expo, Flutter, SwiftUI ou Jetpack Compose.
- Desktop → Tauri / Electron (stack web), macOS SwiftUI ou Windows WinUI 3 / Fluent.
3. Estabelecer a fundação de design
Defina os tokens primeiro: cor (papéis semânticos), escala de tipo, escala de espaçamento, raio, elevação, movimento. Veja principios-de-design.md e sistema-de-design.md. Documente-os como a única fonte da verdade.
4. Explorar direções (2–3 variantes)
Produza 2–3 opções genuinamente diferentes para a(s) tela(s) chave. Cada variante deve ser uma direção completa e construível — não uma troca de cor. Apresente-as com uma justificativa de uma linha cada, depois converja.
5. Construir com arquitetura de componentes
Componha a partir de tokens + primitivas → componentes → padrões → telas. Mantenha os componentes pequenos, impulsionados por props e completos em estados. Espelhe as convenções de pasta/arquitetura em sistema-de-design.md.
6. Adicionar movimento e interação
Aplique movimento de entrada, transição, gesto e layout usando os tokens de duração/easing. Veja movimento-e-interacao.md.
7. Revisar e endurecer
Execute a passagem completa em fluxo-de-trabalho-e-check-list.md: contraste, comportamento responsivo, todos os estados, modo escuro, redução de movimento, desempenho e consistência entre plataformas.
Modo redesign
Ao modernizar uma UI existente, nunca quebre o comportamento:
- Auditoria — inventariar telas atuais, componentes e inconsistências; capturar os problemas reais (caos de espaçamento, hierarquia fraca, baixo contraste, tipo datado, movimento pesado).
- Preservar intenção — manter arquitetura da informação, fluxos e cópia, a menos que peçam para mudá-los.
- Re-tokenizar — mapear valores hard-coded existentes para um novo conjunto de tokens; é aqui que a maior parte do trabalho acontece.
- Reestilizar incrementalmente — aplicar o novo sistema componente por componente; mostrar antes/depois.
- Verificar paridade — todo estado antigo e caso de borda ainda funciona; depois, melhore-o.
Veja fluxo-de-trabalho-e-check-list.md para o fluxo de redesign detalhado.
Inegociáveis
- Sem cores, espaçamentos ou sombras hard-coded fora da camada de token.
- WCAG AA mínimo (4.5:1 texto, 3:1 UI); foco visível em todo elemento interativo.
- Alvos de toque ≥ 44×44pt (iOS) / 48×48dp (Android) / 40px (pointer desktop, com áreas de toque maiores).
- Movimento ≤ ~300ms para transições de UI; respeitar
prefers-reduced-motion. - Sem scroll-reveal, stagger, parallax ou movimento em loop por padrão; conteúdo essencial é visível imediatamente sem JavaScript.
- Temas claro e escuro ambos totalmente projetados.
- Estados de carregamento, vazio, erro e offline projetados para toda superfície de dados.
- Sem visual genérico de IA: um destaque em <10% dos pixels, bordas em vez de sombras padrão, raios pequenos e consistentes (sem pill arredondado para tudo), contraste real de escala de tipo, quebre a simetria de propósito, estados de press/hover/focus projetados, zero cópia de marketing de preenchimento. Veja anti-visual-ia.md.
- Componentes correspondem às especificações exatas em receitas-de-componentes.md (botão/input/card/nav/tabela/… dimensionamento, variantes e a matriz de estado completa).
Arquivos de referência
| Arquivo | Use para |
|---|---|
| anti-visual-ia.md | Explica o "visual de IA" genérico e como tornar a UI artesanal; direções de gosto |
| receitas-de-componentes.md | Especificações exatas para botões, inputs, cards, nav, tabelas, modais, estados |
| principios-de-design.md | Fundamentos visuais: hierarquia, tipo, cor, espaçamento, layout, estados, acessibilidade |
| sistema-de-design.md | Arquitetura de tokens, API de componentes, theming, estrutura de pastas, mapeamento entre plataformas |
| movimento-e-interacao.md | Durações, easings, gestos, animação de layout, movimento reduzido, desempenho |
| diretrizes-de-plataforma.md | Convenções web, iOS, Android, macOS, Windows e breakpoints |
| fluxo-de-trabalho-e-check-list.md | Fluxo de construção/redesign passo a passo e a check-list final de QA |