Sobre el proyecto

CompoMo es una biblioteca de componentes web neutral respecto al framework publicada como @ds-mo/ui. Está construida con Stencil.js, estilizada con los tokens de diseño TokoMo, y se distribuye como elementos personalizados además de los adaptadores generados para Angular, React y Vue. Se describe como parte de la familia ds-mo, junto con @ds-mo/tokens y @ds-mo/icons. La instalación incluye tres paquetes: @ds-mo/tokens, @ds-mo/icons y @ds-mo/ui. Los tokens TokoMo se importan una sola vez en la raíz de la aplicación (tokens, tokens/reset y tokens/globals). El uso sigue el framework. En HTML plano, al importar un módulo de componente se define automáticamente su elemento personalizado, por lo que una etiqueta como ds-button-filled puede usarse directamente con un atributo label. Se anima a las aplicaciones Angular a importar adaptadores independientes por componente (por ejemplo @ds-mo/ui/angular/ds-button-filled); las aplicaciones React y Vue utilizan los wrappers generados de @ds-mo/ui/react y @ds-mo/ui/vue respectivamente. Los iconos se resuelven a través de @ds-mo/icons, donde ds-icon coincide con los nombres exactos canónicos de exportación de IcoMo en el momento de empaquetado. La biblioteca documenta varias superficies de soporte público: @ds-mo/ui/shell para contratos de shell neutrales respecto al framework, @ds-mo/ui/toast para un gestor de toasts, @ds-mo/ui/utils para ayudantes genéricos como registerIcons, @ds-mo/ui/prose.css para estilización de prosa semántica neutral respecto al renderizador, y @ds-mo/ui/control-elevation.css para envoltorios de control elevados externos. Deliberadamente no hay un bundle global de CSS de componentes; los estilos se envían con cada elemento personalizado. En cuanto al soporte de navegadores, CompoMo apunta al conjunto móvil "Baseline Newly available". Los componentes pueden adoptar una característica de la plataforma web una vez que sea interoperable entre los navegadores núcleo de Baseline, y los consumidores que mantengan versiones antiguas de navegadores se espera que proporcionen su propio fallback o se mantengan en una versión anterior compatible. Una adición notable es compomo-mcp, un ejecutable local incluido en el paquete. Expone metadatos de componentes generados y recetas de composición ejecutables para Elementos Personalizados, Angular, React y Vue, y puede registrarse como un servidor MCP (por ejemplo en un archivo de configuración de Codex que apunte a node_modules/.bin/compomo-mcp). Se describe como que utiliza solo stdio y sirve el protocolo moderno 2026-07-28 así como las revisiones basadas en initialize legadas hasta 2025-11-25, recomendándose la negociación automática de versión para clientes que soportan descubrimiento moderno. El README indica que los hechos de la API provienen de los metadatos de Stencil mientras que la intención curada proviene del JSON de agente de componente colocalizado y los patrones ejecutables. La documentación se divide en una introducción de Storybook, una guía de integración de framework, una guía de migración v13, un router de documentación para mantenedores y las instrucciones del repositorio en AGENTS.md. El README declara explícitamente que no duplica versiones de paquetes, listas de componentes, props, eventos y exportaciones, dirigiendo a los lectores a package.json, Storybook o el registro generado para obtener información actual.