Começar

Design system no Framer: styles vs DESIGN.md

Em um design system no Framer, atribua a cada decisão um único local autoritativo. Mantenha a intenção e as regras portáveis no DESIGN.md, valores visuais reutilizáveis nos shared styles do Framer, comportamento e estrutura recorrentes em componentes e adaptações responsivas deliberadas em breakpoints. Reserve os overrides de nível de página para exceções nomeadas. Registre como essas camadas se mapeiam entre si para que um agente de IA não resolva a mesma questão de design de formas diferentes em cada página.

Atualizado 2026-08-03

Comece pelas superfícies documentadas do Framer

Uma decisão de design system pode aparecer em várias partes do Framer. Sua página oficial de IA afirma que o canvas pode refinar tipografia, componentes, breakpoints, espaçamento, cor, efeitos e layouts. A página também descreve componentes de código criados por IA e conexões com agentes externos. Em toda a plataforma, design, código, colaboração e publicação compartilham um único ambiente de trabalho.

Essas capacidades informam o que pode ser editado. Por si sós, elas não decidem onde uma regra deve originar-se ou qual prevalece quando duas camadas divergem. O modelo de responsabilidade e precedência abaixo é um contrato de trabalho para equipes, não um padrão nativo do Framer.

Capacidade documentada versus governança recomendada

O Framer documenta as superfícies editáveis do projeto e os fluxos de trabalho de agentes. Este guia recomenda uma matriz de propriedade, um registro de handoff e uma sequência de verificação para governar essas superfícies.

Atribua a cada decisão um único local autoritativo

Escolha a autoridade com base no escopo da decisão. Uma regra que deva sobreviver a uma mudança de página, agente ou ferramenta de implementação pertence a orientações portáveis, como o DESIGN.md. Implemente um valor reutilizável dentro do projeto Framer como um shared style. Quando uma decisão define uma unidade recorrente com estrutura ou comportamento, coloque essa implementação em um componente.

DetémNão deve deter
DESIGN.mdIntenção portável, papéis semânticos, princípios de layout, orientações de componentes, motivos, restrições e exceções permitidasIDs de objetos do Framer, observações não documentadas ou alegações de que um mapeamento foi testado quando não foi
Shared stylesValores de cor e texto reutilizáveis do Framer que implementam papéis nomeadosCorreções pontuais de página ou a justificativa de por que um papel existe
ComponentesEstrutura recorrente, variantes, estados, propriedades e comportamento de interaçãoValores globais que devem vir de estilos compartilhados ou exceções isoladas para uma única página
BreakpointsAlterações responsivas intencionais de layout, dimensionamento, visibilidade e arranjoAjustes não documentados que compensam a fragilidade de um componente base
Código geradoComportamento ou renderização customizada que as camadas visuais do Framer não expressam adequadamenteUma duplicata silenciosa de valores de tokens ou regras que já pertencem a outro local
Overrides ao nível de páginaExceções pontuais e nomeadas, com justificativa e condição de revisãoEstilização padrão, comportamento reutilizável ou uma saída conveniente para evitar a atualização da camada de origem
Matriz de responsabilidade para um design system no Framer

Um mapeamento não é uma segunda autoridade. Por exemplo, o DESIGN.md pode especificar que o texto suavizado (muted) usa uma função semântica de foreground. Um estilo de texto do Framer pode implementar essa função sob um nome específico do projeto. A regra escrita detém o significado, enquanto o estilo do Framer detém o valor reutilizável local. O registro de handoff conecta ambos.

Use uma regra de precedência de conflitos

Quando duas camadas divergem, não aceite simplesmente a que for renderizada por último. Rastreie a decisão até a sua autoridade declarada, verifique se o mapeamento downstream está atualizado e classifique qualquer desvio como uma exceção aprovada ou um defeito.

  1. Verifique a decisão autoritativa e seu escopo.
  2. Verifique o mapeamento registrado para o estilo, componente, breakpoint ou componente de código do Framer.
  3. Verifique se uma exceção mais específica foi explicitamente permitida.
  4. Se a autoridade for ambígua, interrompa a alteração e defina-a antes de editar mais superfícies.
  5. Atualize primeiro a camada proprietária, depois atualize os mapeamentos afetados e registre a evidência observada.

A correção local pode mascarar a deriva do sistema

Um override ao nível de página pode fazer com que uma tela pareça correta enquanto estilos compartilhados, componentes e outros breakpoints permanecem errados. Trate-o como uma exceção apenas quando seu escopo e motivo estiverem registrados.

Copiar este resumo de alteração de branch

Um agente precisa de mais do que uma solicitação de design. Forneça a ele um registro de aceitação curto que nomeie a decisão autoritativa, os consumidores pretendidos, as superfícies inalteradas e as evidências necessárias para a revisão.

change_id: nav-muted-text
objective: Align secondary navigation text with the declared muted-text role.

source:
  authority: DESIGN.md > Color roles > Muted content
  owner: Design systems owner
  decision: Secondary navigation labels use the muted foreground role.

targets:
  framer_styles:
    - Secondary / Navigation
  components:
    - Site Header
    - Footer Navigation
  representative_pages:
    - Home
    - Pricing
  breakpoints:
    - Desktop
    - Smallest supported phone width

allowed_exceptions:
  - Active navigation item uses the primary foreground role.

must_remain_unchanged:
  - Primary navigation labels
  - Button labels
  - CMS article body text
  - Header spacing and interaction behavior

agent_context:
  include:
    - Relevant DESIGN.md color-role section
    - Target text style
    - Site Header and Footer Navigation components
    - Home and Pricing pages
  exclude:
    - Unrelated pages, CMS content, and global layout changes

evidence:
  intended_change:
    - Before and after capture for each representative page and breakpoint
  unrelated_drift:
    - Comparison of named unchanged surfaces
  unresolved:
    - Record any mapping or behavior that could not be inspected

disposition: pass | revise | block
reviewer:
reviewed_at:
Registro copiável para uma alteração delimitada de branch no Framer

O registro separa a intenção da observação. Um alvo listado em framer_styles deve ser alterado. Sua presença ali não é evidência de que o mapeamento existe ou de que o resultado corresponde à origem. Preencha a seção de evidências apenas após a inspeção.

Páginas representativas devem exercitar a reutilização real. Escolha pelo menos uma página onde o alvo seja proeminente e outra onde ele apareça em uma composição diferente. Para breakpoints, cubra a condição responsiva com maior probabilidade de alterar o componente, em vez de verificar cada largura de canvas arbitrária.

Delimite o contexto do agente antes de editar

O Framer descreve o contexto do projeto, estilos e assets editáveis, conexões com agentes externos e alterações feitas por agentes. Mais contexto não é automaticamente melhor. Um contexto delimitado torna mais fácil ver se o agente seguiu a regra pretendida e se trabalhos não relacionados entraram na branch.

  1. 1

    Selecione a decisão de origem

    Forneça a seção relevante do DESIGN.md ou outra autoridade declarada. Não envie uma biblioteca inteira quando apenas uma função de cor ou regra de componente estiver no escopo.

  2. 2

    Nomeie os consumidores do Framer

    Identifique os estilos compartilhados, componentes, páginas, camadas e breakpoints que devem implementar a decisão. Marque mapeamentos desconhecidos como desconhecidos em vez de adivinhar seus nomes.

  3. 3

    Declare os não-objetivos

    Liste superfícies próximas que o agente não deve redesenhar, renomear, reestruturar ou reestilizar. Inclua componentes não relacionados que compartilham a página.

  4. 4

    Defina a aceitação observável

    Descreva o que um revisor deve ver em páginas representativas e breakpoints pequenos. Nomeie as superfícies não relacionadas que devem permanecer inalteradas.

  5. 5

    Abra uma alteração de branch delimitada

    Solicite apenas a alteração nomeada. Se o agente encontrar um mapeamento ausente ou uma autoridade ambígua, exija que ele relate a lacuna em vez de inventar um novo sistema.

Trate 'desconhecido' como um estado de evidência válido

O status Unknown é mais útil do que um nome de estilo inventado ou um resultado de importação presumido. Ele indica ao revisor qual mapeamento deve ser estabelecido antes que a alteração possa ser aprovada.

Comece a partir de um artefato de origem completo

Se o handoff do Framer não possuir roles portáveis e regras de uso, inspecione um kit público e seu DESIGN.md antes de criar mapeamentos locais. Mantenha a implementação do Framer separada do artefato de origem.

Verifique uma alteração controlada em uma branch

Um canvas de desktop com boa aparência é uma evidência fraca. Revise a alteração pretendida em todos os locais onde ela é reutilizada, inspecione um breakpoint menor e verifique superfícies não relacionadas para detectar drift. O objetivo é a rastreabilidade, e não a afirmação de que uma única revisão certifica todo o site.

  1. 1

    Confirme a origem e o mapeamento

    Verifique se o brief da branch aponta para a decisão autoritativa atual e para os consumidores pretendidos no Framer. Se algum deles estiver faltando, revise o brief antes de julgar a renderização.

  2. 2

    Inspecione a página representativa primária

    Verifique o estilo ou componente pretendido na página onde seu efeito seja mais fácil de visualizar. Registre o que mudou em vez de confiar na memória.

  3. 3

    Inspecione outro consumidor real

    Abra uma segunda página ou composição representativa que utilize o mesmo estilo ou componente. Uma divergência geralmente revela um valor local desvinculado ou um componente duplicado.

  4. 4

    Verifique a adaptação responsiva

    Inspecione o menor breakpoint nomeado e qualquer breakpoint onde o arranjo, a visibilidade ou o dimensionamento mudem intencionalmente. Confirme se a regra base ainda se mantém, a menos que o brief permita uma adaptação.

  5. 5

    Procure por drift não relacionado

    Compare as superfícies listadas em must_remain_unchanged. Verifique os valores de estilo, a estrutura do componente, o layout, o conteúdo e as interações relevantes ao escopo da branch.

  6. 6

    Atribua uma disposição

    Aprove (Pass) quando os mapeamentos pretendidos coincidirem e não restar drift no escopo. Solicite revisão (Revise) para divergências corrigíveis. Bloqueie (Block) quando a autoridade for ambígua, evidências necessárias estiverem indisponíveis ou a branch alterar non-goals protegidos.

O que significa a aprovação

Aprovação (Pass) significa que a alteração delimitada cumpriu seu contrato declarado nas superfícies inspecionadas. Não significa que todo o site no Framer esteja acessível, responsivo, performático ou pronto para publicação.

Diagnostique inconsistências na ordem de propriedade

Quando uma página do Framer parece inconsistente, outro prompt amplo geralmente torna a evidência mais difícil de interpretar. Percorra as camadas na ordem de propriedade e pare no primeiro mapeamento não suportado ou contraditório.

  1. Decisão de origem: A role ou regra pretendida é explícita, atual e possui um proprietário?
  2. Contexto selecionado: O agente recebeu a regra relevante, os alvos, as exceções e os non-goals?
  3. Mapeamento de estilo compartilhado: O elemento de destino usa o estilo do Framer mapeado para a role de origem?
  4. Uso de componente: A página está usando o componente compartilhado e a variante pretendida, ou uma cópia desvinculada?
  5. Adaptação de breakpoint: Um override responsivo altera intencionalmente o valor ou a estrutura?
  6. Código gerado: Um componente de código contém um valor ou comportamento duplicado que conflita com a origem?
  7. Override ao nível de página: Existe um valor local mascarando a implementação compartilhada?

Corrija a camada proprietária, não o primeiro sintoma visível. Se um componente usa o estilo compartilhado errado, corrija o mapeamento do componente. Se a regra de origem estiver genuinamente errada, altere-a através do processo normal de design system da equipe e, então, atualize todos os consumidores afetados. Não reescreva a origem apenas para legitimar um valor local acidental.

Consistency check · Ad-hoc colors

The same plan card, built two ways in Ambient Sage.

Drifting system

Pricing

Starter$19/mo

Everything a small team needs to ship a branded UI.

Consistent system

Pricing

Starter$19/mo

Everything a small team needs to ship a branded UI.

What to notice: O drift de cor torna-se visível quando valores locais competem com roles semânticas mapeadas.

Ambient Sage como exemplo de estado de evidência

O kit público Ambient Sage serve como exemplo porque seus fatos de origem são inspecionáveis. Sua página publicada fornece um DESIGN.md, design tokens semânticos light e dark, uma paleta de 31 cores e roles de tipografia. Plus Jakarta Sans é usada para títulos e corpo, enquanto JetBrains Mono preenche a role mono. O kit também descreve superfícies warm sage, cards tonais e um acento amarelo contido.

Token specimen · real values

Ambient Sage

Live render

Ambient Sage's actual tokens — the same values its exports use.

Color tokensSemantic roles with HEX / HSL / CMYK

Color tokens

Ambient Sage
light · HEX · HSL · CMYK

Core

#F3F4EF

background

H 72 · C0, 0, 2, 4

#1A1C17

foreground

H 84 · C7, 0, 18, 89

#E5E6E0

card

H 70 · C0, 0, 3, 10

#ECEEE8

muted

H 80 · C1, 0, 3, 7

#D8D9D2

border

H 68.57 · C0, 0, 3, 15

Brand

#FEE951

primary

H 52.72 · C0, 8, 68, 0

#1A1C17

primary-fg

H 84 · C7, 0, 18, 89

#E5E6E0

secondary

H 70 · C0, 0, 3, 10

#F7E464

accent

H 52.24 · C0, 8, 60, 3

#FEE951

ring

H 52.72 · C0, 8, 68, 0

Semantic

#C0392B

destructive

H 5.64 · C0, 70, 78, 25

#FFFFFF

destructive-fg

H 0 · C0, 0, 0, 0

#2D7238

success

H 129.57 · C61, 0, 51, 55

#C97D12

warning

H 35.08 · C0, 38, 91, 21

#545651

muted-fg

H 84 · C2, 0, 6, 66

Charts

#FEE951

chart-1

H 52.72 · C0, 8, 68, 0

#4A8FD4

chart-2

H 210 · C65, 33, 0, 17

#6BBF8A

chart-3

H 142.14 · C44, 0, 28, 25

#E07498

chart-4

H 340 · C0, 48, 32, 12

#E8A24B

chart-5

H 33.25 · C0, 30, 68, 9

Type scaleHeading, body, and mono in the kit's fonts

Typography

Ambient Sage

Scale: compact-product

Density: balanced

Heading · Plus Jakarta Sans · 1.875rem

Ship beautiful product faster

Subheading · Plus Jakarta Sans · 1.375rem

A warm-sage neutral-surface mobile kit with a single vivid yellow accent, flat tonal cards, and oversized display numerals.

Body · Plus Jakarta Sans · 1rem

Ambient Sage uses a near-white warm-sage canvas (#f3f4ef) with card panels distinguished only by a tonal shift to #e5e6e0, never by shadows or borders. A single vivid yellow (#fee951) is the only saturated color and appears sparingly at component scale as orbs, button fills, and focus rings. Primary data values render as oversized bold hero numerals with a small superscript unit. Typography is a friendly rounded geometric (Plus Jakarta Sans) with no uppercase and no tight tracking, while JetBrains Mono is reserved for hex codes and technical strings. Generous rounding and luminance-only contrast give the whole system a calm, minimal feel.

Mono · JetBrains Mono · 0.8125rem

npx shadcn add ambientsage.json

Aa

Plus Jakarta Sans · Heading

400500600700

Aa

Plus Jakarta Sans · Body

400500600700

ABCDEFGHIJKLM NOPQRSTUVWXYZ

abcdefghijklmnopqrstuvwxyz

0123456789 & @ # % →

Radius & spacingCorner radius, elevation, and spacing steps

Tokens

Ambient Sage primitives
density: balanced

Radius scale

sm · 0.375rem
md · 0.75rem
lg · 1.25rem
xl · 1.75rem

Component radius

button
card
input

Elevation

level 1
level 2
level 3
level 4

Spacing · base 4px

1x
2x
3x
4x
6x
8x
Design tokens e roles de origem do Ambient Sage. Este espécime mostra o kit, não uma implementação verificada no Framer.
Exemplo Ambient SageO que permanece não resolvido
Disponível na origemDESIGN.md, design tokens semânticos light e dark, roles de tipografia, orientações de espaçamento, motivos e exportações públicasNada neste estado prova como o Framer representa essas decisões
Implementado no FramerUma equipe poderia criar estilos nomeados no Framer e mapeamentos de componentes a partir da fonteNomes reais de estilos, associações de componentes, comportamento do código e adaptações de breakpoint permanecem desconhecidos até serem implementados e registrados
Observado em páginasUm revisor poderia inspecionar páginas e breakpoints representativos após uma alteração delimitada em branchNenhum teste congelado estabelece o comportamento de importação, paridade visual, completude responsiva ou resultados de superfícies inalteradas
Mantenha separadas as evidências disponíveis, implementadas e observadas

Um handoff poderia mapear a função de background do kit para um estilo de cor do Framer, sua função de body para um estilo de texto usando Plus Jakarta Sans e sua orientação de tonal-card para um componente de card reutilizável. Estes são mapeamentos de exemplo, não fatos sobre um projeto existente no Framer. O proprietário do projeto deve escolher os nomes reais e verificar as páginas resultantes.

Sem integração nativa ou alegação de paridade

As evidências disponíveis mostram que o Framer pode usar referências como o DESIGN.md e que o Ambient Sage expõe artefatos portáteis. Isso não demonstra uma importação automática do Identity Forge, criação automática de estilos ou paridade testada entre o kit e um projeto no Framer.

Saiba o que este workflow não pode certificar

O mapa de responsabilidades e o registro de branch melhoram a rastreabilidade. Eles não substituem a revisão de um especialista nem provam que o resultado é bom. Uma implementação consistente ainda pode aplicar consistentemente uma decisão de design ruim.

  • Não certifica a conformidade de acessibilidade, incluindo contraste, comportamento de teclado, tratamento de foco, semântica ou suporte a tecnologias assistivas.
  • Não prova que cada página, estado de conteúdo, localidade ou viewport seja responsivo.
  • Não avalia a qualidade do código gerado, comportamento em runtime, performance, segurança ou manutenibilidade fora da alteração declarada.
  • Não prova que um artefato de origem foi importado automaticamente ou reproduzido com paridade visual.
  • Não autoriza a publicação. A branch ainda precisa do processo normal de revisão e release do projeto.

Mantenha trilhas de evidências separadas quando o risco exigir. A conformidade com o design system questiona se a implementação segue sua fonte declarada. Acessibilidade, resiliência, comportamento e prontidão para produção exigem suas próprias verificações.

Torne uma decisão rastreável hoje

Escolha uma decisão existente que apareça em mais de uma página do Framer, como o texto de navegação suavizado ou a cor da superfície de um card. Declare sua fonte autoritativa, registre o mapeamento exato do estilo ou componente do Framer, nomeie duas páginas representativas e um breakpoint pequeno, e então teste uma alteração delimitada em branch. Expanda o sistema apenas quando o registro estiver claro o suficiente para que outro revisor possa reproduzi-lo.

Fontes

  • AI Website Builder for Designers & Teams | Framer: O Framer documenta páginas editáveis criadas por IA e a capacidade de refinar layouts, tipografia, componentes, breakpoints, espaçamento, cores, efeitos e componentes de código dentro do projeto.
  • Framer: AI website builder for professional sites: O Framer apresenta agentes, design, código, colaboração e publicação como partes da mesma plataforma de construção de sites.
  • Web Design Tools in Framer: A visão geral de design capturada descreve estilização de camadas, grids, stacks, adaptação de tela responsiva, fontes integradas e superfícies de colaboração orientadas a breakpoints.
  • Ambient Sage Design Kit: O kit público Ambient Sage fornece um DESIGN.md, design tokens semânticos light e dark, tipografia Plus Jakarta Sans, JetBrains Mono e vários formatos de exportação para desenvolvedores.
  • How to generate a DESIGN.md (and what it is): O Identity Forge define o DESIGN.md como um brief de design escrito que cobre intenção, tokens, tipografia, layout, tratamentos de componentes, motivos e regras explícitas de uso para agentes de código.
  • AI UI review checklist: test generated interfaces before you ship: O guia de revisão separa evidências de tarefa, design system, resiliência e acessibilidade, e recomenda testar estados representativos e alterações controladas antes do release.

Fontes

  • AI Website Builder for Designers & Teams | Framer: O Framer documenta páginas editáveis criadas por IA e a capacidade de refinar layouts, tipografia, componentes, breakpoints, espaçamento, cores, efeitos e componentes de código dentro do projeto.
  • Framer: AI website builder for professional sites: O Framer apresenta agentes, design, código, colaboração e publicação como partes da mesma plataforma de construção de sites.
  • Web Design Tools in Framer: A visão geral de design capturada descreve estilização de camadas, grids, stacks, adaptação de tela responsiva, fontes integradas e superfícies de colaboração orientadas a breakpoints.
  • Ambient Sage Design Kit: O kit público Ambient Sage fornece um DESIGN.md, design tokens semânticos light e dark, tipografia Plus Jakarta Sans, JetBrains Mono e vários formatos de exportação para desenvolvedores.
  • How to generate a DESIGN.md (and what it is): O Identity Forge define o DESIGN.md como um brief de design escrito que cobre intenção, tokens, tipografia, layout, tratamentos de componentes, motivos e regras explícitas de uso para agentes de código.
  • AI UI review checklist: test generated interfaces before you ship: O guia de revisão separa evidências de tarefa, design system, resiliência e acessibilidade, e recomenda testar estados representativos e alterações controladas antes do release.