Sobre o projeto

CompoMo é uma biblioteca framework-neutral de web components publicada como @ds-mo/ui. É construída com Stencil.js, estilizada com tokens de design TokoMo e distribuída como custom elements juntamente com adaptadores gerados para Angular, React e Vue. É descrita como parte da família ds-mo, ao lado de @ds-mo/tokens e @ds-mo/icons. A instalação importa três pacotes: @ds-mo/tokens, @ds-mo/icons e @ds-mo/ui. Os tokens TokoMo são importados uma vez na raiz da aplicação (tokens, tokens/reset e tokens/globals). O uso segue o framework. Em HTML puro, importar o módulo de um componente define automaticamente seu custom element, então uma tag como ds-button-filled pode ser usada diretamente com um atributo label. Aplicações Angular devem importar adaptadores standalone por componente (por exemplo @ds-mo/ui/angular/ds-button-filled); aplicações React e Vue usam wrappers gerados de @ds-mo/ui/react e @ds-mo/ui/vue respectivamente. Os ícones são resolvidos via @ds-mo/icons, com ds-icon correspondendo exatamente aos nomes canônicos IcoMo exportados no momento do build. A biblioteca documenta várias superfícies públicas de suporte: @ds-mo/ui/shell para contratos framework-neutrals de shell, @ds-mo/ui/toast para um gerenciador de toast, @ds-mo/ui/utils para helpers genéricos como registerIcons, @ds-mo/ui/prose.css para estilização semântica renderer-neutral de prose, e @ds-mo/ui/control-elevation.css para wrappers externos elevados de controles. Não há bundle CSS global de componentes; os estilos vêm com cada custom element. Sobre suporte a navegadores, CompoMo tem como alvo o conjunto "Baseline Newly available" em evolução. Componentes podem adotar uma feature da plataforma web assim que for interoperável entre navegadores Baseline core, e consumidores com versões mais antigas de navegador são esperados para fornecer seus próprios fallbacks ou permanecer em releases compatíveis anteriores. Uma adição notável é compomo-mcp, um executável local empacotado com o pacote. Ele expõe metadata de componentes gerados e receitas de composição executáveis para Custom Elements, Angular, React e Vue, podendo ser registrado como servidor MCP (por exemplo em um arquivo de config do Codex apontando para node_modules/.bin/compomo-mcp). É descrito como usando apenas stdio e servindo o protocolo moderno 2026-07-28 assim como revisões legadas baseadas em initialize até 2025-11-25, sendo recomendada negociação automática de versão para clientes que suportem discovery moderno. O README enquadra fatos da API como provenientes da metadata do Stencil enquanto intenção curada vem de component agent JSON co-localizado e padrões executáveis. A documentação está dividida entre introdução do Storybook, guia de integração por framework, guia de migração v13, roteador de documentação para mantenedores e instruções do repositório em AGENTS.md. O README explicitamente se recusa a duplicar versões dos pacotes, listas de componentes, props, eventos e exports, direcionando os leitores para package.json, Storybook ou o registry gerado para fatos atuais.