Skip to content

Metacore Kernel

Metacore Kernel

El runtime de Metacore — WASM seguro, CRUD dinámico y un modelo de permisos declarativo en una sola librería de Go.

El Metacore Kernel es la librería Go que embebés en tu app. Es dueño del schema de la base de datos, la superficie de CRUD dinámico, los gates de permisos, el ciclo de vida de los addons, el hub de WebSocket, el endpoint de métricas, el sandbox de WASM y el instalador de manifest. Vos aportás un router de Fiber y un handle de Postgres; el kernel monta todo lo demás y lo mantiene consistente entre reloads.

Subsistemas

SubsistemaResponsabilidad
runtime/wasmSandbox de WASM basado en wazero; instancias de módulo por addon con imports limitados por capability.
wsHub de WebSocket — fan-out por usuario, organización, canal; contrato de auto-reconexión con el provider del SDK.
securityPolítica compilada Capabilities; guard SSRF de egress; enforcer a nivel addon.
installerHot-loadea .mcbundles — corre migraciones, registra metadata, monta handlers, firma.
lifecycleTransiciones de install / enable / disable / upgrade / uninstall para addons.
hosthost.Host y host.App — la superficie pública contra la que componen las apps que embeben.
eventsBus pub/sub de eventos sobre el que emiten los addons; in-process hoy, pluggable.
eventlogLog de auditoría append-only de operaciones CRUD, decisiones de permisos y eventos de ciclo de vida de addons.
navigationSidebar / árbol de routes construido a partir de manifests; respeta los gates de capability por usuario.
metadataSchemas materializados de tabla/modal/options servidos a los clientes <DynamicTable>.
manifestParser y validador de manifest.json; tipos canónicos compartidos con el SDK.
dynamicServicio + handler genérico de CRUD — list, get, create, update, delete sobre cualquier modelo registrado.
permissionServicio de roles/capabilities a nivel usuario + middleware de Fiber.
notificationsCola de notificaciones por usuario, fan-out hacia ws y almacenamiento durable.
webhooksWebhooks salientes firmados con HMAC — list, create, deliver, retry, test/replay.
queryParser de filter / sort / paginate compartido por dynamic y los handlers del host.

Repo

El código fuente, issues y releases viven en asteby/metacore-kernel. El kernel es Apache-2.0.

Combinalo con el SDK

El kernel expone el contrato de metadata, permisos y CRUD que el Metacore SDK consume desde el lado React. Los dos se publican de forma independiente — la versión del kernel vX.Y.Z y la versión del SDK vA.B.C son compatibles siempre que coincidan en las shapes JSON documentadas en API dinámica.

Metacore es open-source. Apache-2.0.