Serviços públicos · Novo recurso

Sistema de design Digital Agency.

Crie interfaces japonesas legíveis para serviços públicos com funções de texto do DADS, tokens semânticos e a anatomia nativa dos componentes de HTML. Experimente uma consulta funcional de recibos com erros de formato, resultado sem correspondências e um registro de status que pode ser revisado.

Guia OpenDesign8 capítulos17 entradas de referênciaGuia de aplicação original
01

Prévia da interface sistema de design Digital Agency

Teste uma referência inválida, uma referência sem resultados e, em seguida, 123456 para exibir um registro de status fictício.

Consulta de comprovante de procedimentoAbrir exemplo completo
Estilos nativos de campo/botão DADS HTML, datados de 3 de outubro de 2026, com design-tokens 2.0.1; layout original e lógica de consulta local. · Referência de implementação
02

Referência de design do sistema de design Digital Agency

Documentação beta do DADS v2.18.0; estilos nativos de exemplo de HTML inspecionados em 3 de outubro de 2026; design-tokens 2.0.1. A documentação, o repositório de exemplos e o pacote de tokens têm históricos de versão distintos. As escolhas de layout abaixo são diferenciadas explicitamente dos valores oficiais dos componentes.

Tipografia

Fonte
Nome / RegraValor / ConfiguraçãoUso
Sans familyNoto Sans JP, system fallbacksA prévia usa a pilha de fontes alternativa documentada sem baixar nenhuma fonte.
Std-17N-17017px / 1.7; weight 400Texto padrão para leitura; a nomenclatura do token descreve tamanho, peso e entrelinha.
Body / UI baseline16px or greater14px é reservado para contextos de apoio limitados.
Weight rolesN = 400; B = 700Use os estilos regular e negrito nativos.

Estrutura nativa do campo

Fonte
Nome / RegraValor / ConfiguraçãoUso
data-size sm / md / lg2.5rem / 3rem / 3.5remAlturas dos controles baseadas no tamanho da fonte raiz, não em três tamanhos de texto diferentes.
Input border / radius1px / 0.5remA borda usa neutral-solid-gray-600; o raio é CSS do componente.
Input padding0.75rem 1remPreenchimento em bloco e em linha; largura máxima de 100%.
Focus4px black outline, 2px offset, 2px yellow shadowEstilo nativo de foco visível; evite que as bordas do contêiner o recortem.

Cores do pacote de tokens

Fonte
Nome / RegraValor / ConfiguraçãoUso
--color-key-900#0017c1 O alias padrão key aponta para primitive-blue-900.
--color-semantic-error-1#ec0000 O alias aponta para primitive-red-800; use-o junto com uma mensagem de erro.
--color-neutral-solid-gray-900#1a1a1a Texto do campo.
--color-neutral-solid-gray-600#666666 Borda padrão do campo.
--color-primitive-yellow-300#ffd43d Sombra de foco atrás do contorno preto.

Botões e espaçamento do aplicativo

Fonte
Nome / RegraValor / ConfiguraçãoUso
Large minimum136 × 56pxPermita que os rótulos se expandam e quebrem linha.
Medium minimum96 × 48pxAdequado para uma ação secundária.
Small / extra-small minimum80 × 36px / 72 × 28pxGaranta uma área-alvo de 44 CSS px, mesmo quando o controle visível for mais baixo.
Preview rhythm8 / 24 / 64pxEscolha do aplicativo com base nos exemplos das orientações de espaçamento; não é uma escala DADS obrigatória.
03

Guia completo sistema de design Digital Agency

Um guia prático para escolher, aplicar e avaliar este sistema em uma interface real.

DESIGN-japan-dads.md

Orientações completas, um ponto de partida para a implementação e links para o código-fonte.

Baixar o guia

Recursos e escopo sistema de design Digital Agency

Escolha o caminho de origem de HTML

O índice oficial de recursos oferece exemplos de HTML/CSS/JavaScript, exemplos de React/Tailwind, um plugin do Tailwind e dados de design do Figma. Este exemplo escolhe o caminho simples de HTML: o campo e o botão CSS são copiados sem alterações, enquanto a consulta de status e a validação no cliente ao redor deles são código do aplicativo. Não existe um pacote universal de componentes DADS inventado.

Com base neste guia de OpenDesign

A prévia é uma consulta fictícia e independente de procedimentos municipais. Ela não reproduz o cabeçalho de um órgão governamental, não consulta um banco de dados público nem alega apresentar o status de um serviço oficial. O formato do comprovante e os registros de status são dados de exemplo.

  1. Carregue design-tokens antes dos estilos dos dois componentes.
  2. Mantenha as classes e os atributos de dados documentados nos controles nativos de HTML.
  3. Adicione validação específica do serviço, conteúdo de status e movimentação do foco no código do aplicativo.

Consulte a especificação de apoio

Tipografia e idioma sistema de design Digital Agency

Entenda o nome do estilo de texto

Std-17N-170 descreve uma tipografia regular de 17px, com entrelinha unitária de 1.7. A prévia aplica esse ritmo de leitura ao texto corrido e define o título com 32px em negrito e entrelinha de 1.5. Noto Sans JP é a opção sem serifa documentada; também há fontes alternativas do sistema disponíveis quando a fonte da web não é carregada. Este exemplo local usa intencionalmente essas alternativas.

Textos em japonês e em inglês não ocupam a mesma largura. Mantenha os rótulos visíveis acima dos controles, permita que o título quebre linha e evite dimensionar um botão com base em uma contagem presumida de caracteres. Uma tradução pode exigir mais espaço vertical sem alterar a função do componente.

Consulte a especificação de apoio

Cores semânticas e foco sistema de design Digital Agency

Use os aliases realmente consumidos por CSS

O botão de exemplo define sua cor padrão a partir de --color-key-900. A folha de estilos de tokens distribuída resolve esse alias para blue-900, #0017c1. As regras de hover e active selecionam key-1000 e key-1200, em vez de aplicar uma opacidade arbitrária. A borda de erro do campo usa --color-semantic-error-1.

O contorno preto e a sombra amarela permanecem visíveis quando um controle recebe foco pelo teclado. Posicione o controle longe de contêineres que possam recortá-lo; um cartão com overflow-hidden pode cortar o indicador mesmo quando CSS do componente está correto. O texto de erro e aria-invalid complementam a borda vermelha.

Consulte a especificação de apoio

Espaçamento e fluxo responsivo sistema de design Digital Agency

Escolha um ritmo de espaçamento simples para o aplicativo

As orientações de espaçamento do DADS apresentam exemplos, em vez de prescrever uma sequência obrigatória única para todas as interfaces. Esta composição usa 8px dentro de unidades relacionadas, 24px entre seções do formulário e 64px como margem generosa da página em telas desktop. A largura máxima do conteúdo, de 52rem, é uma decisão do aplicativo, não um token DADS.

Em larguras estreitas, as definições dos resultados ficam empilhadas e os controles ocupam todo o espaço disponível. Este exemplo usa uma media query de 768px. Ela não é apresentada como um breakpoint universal do DADS; a quebra do conteúdo e o tamanho mínimo do botão são os motivos para a alteração.

css
.lookup { max-width:52rem; margin-inline:auto; padding:64px 24px; }
@media(max-width:767px) { .lookup { padding:24px; } .actions { align-items:stretch; } }

Referência de código

Consulte a especificação de apoio

Estrutura de campos e erros sistema de design Digital Agency

Mantenha o rótulo, a dica e o erro separados

O contêiner nativo .dads-input-text define os padrões de texto. O elemento filho .dads-input-text__input controla tamanho, borda, preenchimento, raio e estados de foco. O rótulo associado é vinculado explicitamente por for/id. A dica continua disponível após um erro para que a pessoa não perca a informação sobre o formato esperado.

O exemplo aceita exatamente seis dígitos ASCII. Uma entrada malformada define aria-invalid=true, exibe a mensagem de erro associada e devolve o foco ao campo. Um valor sintaticamente válido diferente de 123456 gera uma mensagem separada de ausência de correspondência; não é descrito como erro de formatação. Ambos os comportamentos são regras locais da demonstração.

  • Mantenha o tipo do campo como texto: uma referência é um identificador, não uma quantidade.
  • Use inputmode=numeric como dica de teclado, sem os botões de incremento e decremento de campos numéricos.
  • Mantenha o valor digitado enquanto explica como corrigi-lo.

Consulte a especificação de apoio

Sistema de design Digital Agency Hierarquia e estados dos botões

Uma ação principal para esta consulta

O botão grande preenchido inicia a consulta, e o botão de estilo textual limpa o exemplo. Os valores nativos de data-type são solid-fill, outline e text; data-size seleciona lg, md, sm ou xs. Estes são atributos de exemplo HTML, não props de React.

O botão grande tem largura mínima de 136px e altura de 56px. Ele pode se expandir quando o rótulo exigir mais espaço. As variantes pequena e extrapequena usam uma área de interação ampliada no CSS fornecido; não coloque alvos adjacentes nessa área. A demonstração usa as variantes maiores para evitar esse conflito.

Consulte a especificação de apoio

Sistema de design Digital Agency Um resultado de status útil

Torne o estado local inspecionável

Ao inserir 123456, é exibido um comprovante fictício com uma lista de definições para referência, data de envio e próxima ação. Após a consulta, o foco vai para o título, para que a pessoa que navega pelo teclado acesse diretamente o novo resultado. O estado sem correspondência também recebe o foco e inclui uma opção para tentar novamente.

A lista de três etapas é uma composição original da aplicação. Ela diferencia recebido, em análise e decisão por meio de texto, forma e cor. Uma implementação real deve obter esses valores do serviço e tratar registros não autorizados, indisponíveis e expirados. A prévia não faz solicitações externas e nunca dá a entender que encontrou o registro de uma pessoa real.

Consulte a especificação de apoio

Sistema de design Digital Agency Integre o exemplo

Separe tokens, estilos e comportamento

O pacote de tokens disponibiliza dist/tokens.css. Os exemplos de HTML estão em um repositório de código-fonte com scripts do Storybook; clonar esse repositório fornece um ambiente para inspeção. Copie os estilos dos componentes necessários junto com a licença e registre a revisão de origem antes de adaptá-los para produção.

Nesta página, o pacote de tokens está fixado na versão 2.0.1, e os estilos de HTML vêm de um instantâneo de código-fonte datado. A demonstração independente carrega arquivos locais, então a renderização verificada não depende de um CDN ativo. O comando de configuração do Storybook é fornecido como caminho oficial para acessar o repositório; uma instalação limpa das dependências não foi executada para esta prévia.

Consulte a especificação de apoio

Sistema de design Digital Agency Exemplos de componentes do sistema de design

Um campo de referência com rótulo

Classes nativas de campo de entrada do DADS com uma dica persistente e um erro associado.

html
<div class="dads-input-text">
  <label for="reference">Reference number (required)</label>
  <p id="reference-hint">Use the 6 digits on your example receipt.</p>
  <input class="dads-input-text__input" data-size="lg"
    id="reference" inputmode="numeric" autocomplete="off"
    aria-describedby="reference-hint reference-error" aria-invalid="true">
  <span class="dads-input-text__error-text" id="reference-error">
    Enter 6 digits, for example 123456.
  </span>
</div>

Referência de código

  • Remova aria-invalid e oculte o erro após uma correção válida.
  • A validação da referência é lógica da aplicação.

Ações principais de consulta e redefinição

Use variantes nativas de botão e tipos de ação de HTML.

html
<button class="dads-button" data-type="solid-fill" data-size="lg" type="submit">
  Show example status
</button>
<button class="dads-button" data-type="text" data-size="md" type="reset">
  Clear reference
</button>

Referência de código

Exemplo completo independente

O documento completo inclui layout, controles e inicialização. Extraia o arquivo de exemplo indicado para obter os recursos do fornecedor no caminho relativo exato e, em seguida, disponibilize-o por HTTP.

html
<!doctype html><html lang="en"><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>DADS procedure receipt example</title><link rel="stylesheet" href="vendor/dads-2026-10-03/tokens.css"><link rel="stylesheet" href="vendor/dads-2026-10-03/input-text.css"><link rel="stylesheet" href="vendor/dads-2026-10-03/button.css"><style>
*{box-sizing:border-box}body{margin:0;color:var(--color-neutral-solid-gray-900);font:400 17px/1.7 var(--font-family-sans);background:#fff}.lookup{max-width:52rem;padding:64px 24px;margin:auto}.eyebrow{font-size:14px;letter-spacing:.08em;border-bottom:1px solid #b3b3b3;padding-bottom:16px}h1{font-size:32px;line-height:1.5;margin:24px 0}h2{font-size:24px;line-height:1.5}p{margin:8px 0 24px}.field{margin:32px 0}label{font-weight:700;display:block}.dads-input-text__input{width:22rem}#reference-hint{margin:8px 0}.actions{display:flex;gap:24px;flex-wrap:wrap;align-items:center;margin:24px 0}.result{border-top:4px solid var(--color-key-900);background:#f5f5f5;padding:24px;margin-top:32px}.result:focus{outline:3px solid #111;outline-offset:4px}dl{display:grid;grid-template-columns:10rem 1fr;gap:16px}dt{font-weight:700}dd{margin:0;overflow-wrap:anywhere}ol{padding-left:24px}li{padding:8px}li.current{font-weight:700;color:var(--color-key-900)}small{display:block;font-size:14px;margin-top:32px;color:#555}[hidden]{display:none!important}@media(max-width:767px){.lookup{padding:24px}h1{font-size:28px}.actions{align-items:stretch;flex-direction:column}.actions button{width:100%}dl{grid-template-columns:1fr;gap:4px}dd{margin-bottom:16px}}
</style><main class="lookup"><div class="eyebrow">SERVICE PATTERN · DADS HTML</div><h1>Check a procedure receipt</h1><p>Use the reference from your receipt to view the next step. This is a fictional local example.</p><form id="lookup-form" novalidate><div class="dads-input-text field"><label for="reference">Reference number (required)</label><p id="reference-hint">Enter 6 digits. Try <strong>123456</strong> for the example record.</p><input id="reference" class="dads-input-text__input" data-size="lg" inputmode="numeric" autocomplete="off" aria-describedby="reference-hint reference-error"><span id="reference-error" class="dads-input-text__error-text" hidden>Enter 6 digits, for example 123456.</span></div><div class="actions"><button class="dads-button" data-type="solid-fill" data-size="lg" type="submit">Show example status</button><button class="dads-button" data-type="text" data-size="md" type="reset">Clear reference</button></div></form><section class="result" id="missing" tabindex="-1" hidden><h2>No matching example</h2><p>This reference has the correct format, but is not in the local example data. Try 123456.</p></section><section class="result" id="found" tabindex="-1" hidden><h2>Receipt 123456</h2><dl><dt>Procedure</dt><dd>Community room request</dd><dt>Submitted</dt><dd>1 October 2026 — fictional date</dd><dt>Next action</dt><dd>Wait for the example review. No documents are currently requested.</dd></dl><ol aria-label="Procedure progress"><li>Received</li><li class="current" aria-current="step">Checking the request — current step</li><li>Decision — not started</li></ol></section><small>Independent OpenDesign demonstration. Native DADS component CSS; system font fallback. No information is sent or stored.</small></main><script>
const f=document.querySelector('form'),i=document.querySelector('input'),e=document.querySelector('#reference-error'),found=document.querySelector('#found'),missing=document.querySelector('#missing');f.addEventListener('submit',ev=>{ev.preventDefault();found.hidden=missing.hidden=true;const valid=/^[0-9]{6}$/.test(i.value.trim());e.hidden=valid;i.setAttribute('aria-invalid',String(!valid));if(!valid){i.focus();return}const target=i.value.trim()==='123456'?found:missing;target.hidden=false;target.focus()});f.addEventListener('reset',()=>{found.hidden=missing.hidden=e.hidden=true;i.removeAttribute('aria-invalid');i.focus()});
</script></html>

Referência de código

  • Baixe o exemplo completo em Fontes. O README informa o comando exato para iniciá-lo localmente.
  • Mantenha os caminhos do fornecedor relativos a este documento; o arquivo inclui todos os recursos usados nesta prévia.
04

Sistema de design Digital Agency Configuração do agente

Ponto de partida para implementação

Fluxo de trabalho do repositório oficial de exemplos e caminho verificado para importar tokens. Esta prévia é executada com CSS copiados localmente; não requer React nem um back-end. O ZIP completo do exemplo funcional em Sources também inclui as dependências exatas da prévia e o documento completo. Extraia os arquivos, execute python3 -m http.server 8080 nesse diretório e abra http://localhost:8080/japan-dads.html. Não abra exemplos baseados em módulos por meio de file://.

bash
# Official HTML samples are a source repository, not a published component SDK.
git clone https://github.com/digital-go-jp/design-system-example-components-html.git
cd design-system-example-components-html
npm install
npm run storybook
# For the standalone composition, copy these component styles into your app:
# src/components/input-text/input-text.css
# src/components/button/button.css
# Install the independently versioned token package:
npm install @digital-go-jp/[email protected]
# In a CSS-aware bundler entry:
# import '@digital-go-jp/design-tokens/dist/tokens.css';
# import './input-text.css';
# import './button.css';

Um prompt para seu projeto

Prompt para agente de IA
Implemente uma consulta fictícia de comprovante de serviço público usando os estilos input-text e button do DADS HTML, além de design-tokens 2.0.1. Mantenha o rótulo visível, a dica de formato, aria-describedby e o estado inválido. Use o ritmo de texto Std-17N-170 e uma ação principal grande. Mostre estados separados para formato incorreto, ausência de correspondência e registro encontrado. Preserve o texto digitado, mova o foco para os títulos dos novos estados, evite dados pessoais reais e marcas de identidade governamentais. Trate a largura de conteúdo de 52rem e os espaçamentos de 8/24/64px como escolhas da aplicação.
05

Sistema de design Digital Agency Fontes e escopo

Composição educacional independente que utiliza exemplos e tokens oficiais de CSS. Sem endosso governamental, consulta ativa ou identidade de órgão copiada. A fonte usa como alternativa a fonte sem serifa do sistema disponível localmente. O layout da aplicação e os dados dos registros não são especificações oficiais do DADS.