Patrones del Registro Open-Code (Registry Patterns)
Ryukami-UI funciona bajo el modelo de registro abierto inspirado en shadcn/ui y 8bitcn.com. Los componentes no se instalan como cajas negras en node_modules, sino que el código fuente se compila a endpoints JSON estáticos para que el CLI los inyecte directamente en src/components/.
1. Declaración de un Nuevo Componente
Para registrar un componente, añádelo al array ITEMS en scripts/build-registry.ts:
{
name: 'nombre-componente',
title: 'Título Visual',
category: '01_CORE_UI', // o '02_FORM_CONTROLS' | '03_LAYOUT_AND_MODALS' | '04_SCORCH_STUDIO'
description: 'Descripción precisa de una línea.',
file: 'src/components/NombreComponente.astro',
registryDependencies: ['badge', 'button'], // Dependencias opcionales
}2. Esquema JSON Compilado (public/r/<name>.json)
El compilador genera un JSON con la siguiente estructura:
{
"name": "button",
"type": "registry:component",
"title": "Button",
"category": "01_CORE_UI",
"description": "Botón mecánico Neo-Brutalista con 5 variantes.",
"files": [
{
"path": "src/components/Button.astro",
"type": "registry:component",
"content": "--- ... --- <button> ...",
"sha256": "4a7b9c..."
}
],
"registryDependencies": []
}3. Verificación de Integridad SHA-256
Cada archivo incluye su firma criptográfica sha256. El comando ryukami-ui diff audita cualquier modificación local comparando el hash calculado frente al hash oficial del registro.