01101 componentes de produção
Das primitivas às composições de página completas — 101 componentes, cada um extraído de um produto que entregamos, em vez de desenhado isoladamente. Se um componente está no PDS, já fez trabalho a sério: este site, as demos dos produtos e os dashboards dos nossos clientes assentam todos nele.
02Design tokens
Cor, tipografia, espaçamento e movimento resolvem-se a partir de uma única camada de tokens. Altere um token e todos os componentes acompanham — sem overrides por componente, sem divergências entre produtos.
03Dois temas, cinco acentos
Um tema escuro e um claro, cinco cores de destaque, tudo orientado pelos mesmos tokens. A variação de marca é uma troca de tokens, não um fork — todos os produtos da família assentam no mesmo sistema.
04Dark-first
Contraste, elevação e cor são trabalhados primeiro no tema escuro; o tema claro deriva dos mesmos tokens. O resultado é um modo escuro que parece nativo, não invertido.
Botões, inputs, selects, switches, sliders e estrutura de campos — com labels, dicas e erros incluídos. Os estados já estão desenhados: foco, desativado, inválido e a carregar comportam-se da mesma forma em todos os produtos.
06Layout e composição
Stacks, grids, divisores e shells de página compõem ecrãs sem CSS ad hoc. Os maiores componentes são composições de página completas — padrões de hero, secção e rodapé extraídos de páginas que entregamos.
07Navegação
Cabeçalhos, separadores, breadcrumbs e menus com comportamento responsivo e de teclado já integrado. A navegação deste site é o próprio componente, não uma imitação.
08Overlays
Modais, sheets, drawers, popovers e tooltips num único modelo de camadas — focus trapping, fecho e empilhamento tratados uma só vez, de forma centralizada. Nenhum produto traz a sua própria aritmética de z-index.
09Apresentação de dados
Tabelas, listas, tiles de métricas, badges e timelines para produtos que vivem de números. As consolas de operação de toda a família obtêm a sua densidade a partir destes componentes.
10Feedback e estado
Toasts, banners, estados vazios, progresso e skeletons — os estados menos glamorosos, desenhados à partida. Um produto construído sobre o PDS tem uma resposta ponderada para carregamento, vazio e falha.
11Tipografia
Uma escala tipográfica editorial com labels mono para o registo técnico — a voz que se vê em todas as superfícies da Protocore. A escala é feita de tokens, por isso os produtos ajustam-na sem sair do sistema.
12Movimento
Durações e easings são entregues como tokens, com os componentes a usá-los desde o início. As interfaces movem-se de forma consistente entre produtos porque ninguém reajusta uma animação à mão.
13Acessível por defeito
Contraste, estados de foco e comportamento de teclado estão integrados nos componentes, não ficam como exercício. Use as predefinições e a acessibilidade vem incluída.
14CSS sem runtime
O estilo é CSS estático resolvido em tempo de build — sem runtime de CSS-in-JS, nada calculado no browser. A camada de estilo não acrescenta JavaScript à página.
15Camada CSS independente de framework
O sistema também é distribuído como um pacote CSS simples — tokens e classes utilitárias sem necessidade de React. Páginas renderizadas no servidor, emails e stacks sem React partilham a mesma fonte de verdade.
16Exportação de tokens por stack
Os tokens são exportados para a web como variáveis CSS, como preset de Tailwind e em formatos nativos para plataformas móveis. Uma única definição da marca, usada onde quer que o produto corra.
17Theme provider e hooks
A camada React envolve as apps num provider e expõe os tokens através de hooks — os componentes leem o tema e o acento ativos em vez de valores fixos no código. Mudar de tema é estado, não um rebuild.
18Temas whitelabel
O mesmo mecanismo que dá cinco acentos ao PDS dá a marca a um produto whitelabel: troque os valores dos tokens, mantenha os componentes. Cada app whitelabel da família é prova de que funciona.
19Mapa llms.txt
Um mapa legível por máquinas de todo o sistema — componentes, tokens, padrões — publicado como llms.txt. Aponte um LLM para ele e o código gerado usa componentes PDS reais, em vez de inventar outros plausíveis.
20Servidor MCP
Um servidor MCP expõe o sistema diretamente aos agentes de programação: componentes, props e tokens, consultáveis enquanto o agente constrói. O design system responde a perguntas em vez de ser colado em prompts.
21Documentado de ponta a ponta
Cada componente vive em pds.protocore.io com exemplos ao vivo, props e código para copiar e colar. A documentação é renderizada no próprio PDS — o que lê é o que entrega.
22Versões controladas
O PDS é distribuído em pacotes versionados, com versões semânticas e changelogs. As atualizações são deliberadas: a equipa muda quando quiser, e o changelog diz exatamente o que mudou.
23Registry privado
Os pacotes instalam-se a partir do registry npm privado da Protocore com um token por equipa no .npmrc — o fluxo npm habitual, restrito a equipas licenciadas. Sem ficheiros zip avulsos, sem instalações por copiar e colar.
24Chaves de licença offline
Uma chave de licença assinada é verificada localmente — sem phone-home, sem verificação de rede no seu build. Os problemas de licenciamento surgem como avisos em tempo de desenvolvimento e nunca quebram uma app em produção.
25Licenciado por equipa
O PDS é proprietário e licenciado por equipa. Peça acesso e tratamos da configuração — pacotes, documentação e fontes dos tokens — para que uma equipa o adote numa tarde.