Apariencia
Mi primer plugin
Esta guía construye un plugin real, Notas, de principio a fin: un tablón de notas del local con notas fijadas, un permiso propio, una tarea diaria, un evento y un gancho, y lo deja firmado e instalable.
La guía está ejecutada. Cada comando y cada fichero de las ocho páginas se ejecuta contra la plantilla con
npm run check:guide(endeveloper/): crea el proyecto conhury-plugin init, aplica los bloques de código en orden, y lanzanpm test,npm run typecheck,npm run build,keygen,signyverify. Después comprueba el.zipfirmado con el propio instalador de la API. Si algo de lo que lees aquí no funcionara, esa comprobación fallaría. Los bloques con un nombre de fichero entre corchetes son los que se aplican.
Qué vas a construir
| Pieza | Dónde | Paso |
|---|---|---|
| Proyecto desde la plantilla, con tests y tipos del host | hury-plugin init | 1 |
Ruta GET /notas/summary | api/routes.ts | 2 |
| Migración SQL idempotente y ruta para fijar | migrations/002_…, api/routes.ts | 3 |
| Pantalla del admin con el kit de componentes | admin/pages/NotasPage.vue | 4 |
| Traducciones en, ca, fr | admin/i18n/*.json | 5 |
Permiso propio notas.pin | api/index.ts, migrations/003_… | 6 |
| Tarea programada, evento de dominio y gancho | api/schedules.ts, api/reactions.ts | 7 |
| Construir, firmar con tu clave, verificar e instalar | hury-plugin build · keygen · sign · verify | 8 |
Requisitos
- Node.js 22 o superior (
node --version). - Acceso al registro de npm para instalar las dependencias del proyecto.
- Una instalación de Hury Suite donde probarlo (la tuya, o la de pruebas): para instalar tu plugin firmado con tu clave, el dueño de esa instalación tiene que añadir tu clave pública a
PLUGIN_TRUSTED_KEYS(paso 8).
No necesitas el repositorio de Hury ni acceso a ningún servidor: el kit trae los tipos del host (@host/*, @/*) y un host de pruebas para ejecutar las rutas de tu plugin sin base de datos.
Cómo está planteado el ejemplo
El proyecto que crea hury-plugin init ya es un plugin completo y funcional (una lista de elementos con alta y borrado, permiso, migración, página y traducciones). Lo tratamos como la versión 1.0.0 ya publicada y construimos encima la 1.1.0. Eso permite ver la regla que más se rompe: una migración publicada no se edita nunca; la nueva versión añade una migración nueva.