VVibeFlui

Adapters and Plugins

Adapters and plugins extend VibeFlui without changing portable schemas. They are installed as separate packages, then registered through FluiKitProvider.

Adapter pages

Package map

PackageMain purposeFactory exportPrebuilt export
@vibeflui/coreCore renderer, provider, schema validation, registry, themes, endpoint provider, and plugin utilities.createFluiKitPlugin-
@vibeflui/shadcnShadcn-compatible theme metadata, StatusBadge renderer, and Switch field adapter.createShadcnPluginshadcnPlugin
@vibeflui/tailadminTailAdmin-compatible theme metadata, StatusBadge renderer, and Switch field adapter.createTailAdminPlugintailAdminPlugin
@vibeflui/react-queryTanStack Query-compatible data provider.createReactQueryPluginReactQueryPlugin alias
@vibeflui/react-selectReact Select field adapter.createReactSelectPlugin-
@vibeflui/editorsRich text, code, markdown, and Editor.js field adapters.createEditorsPlugin, richtextPlugin, codePlugin, markdownPlugin, editorJsPlugineditorsPlugin
@vibeflui/antdAnt Design field adapter and adapter metadata.createAntdPluginantdPlugin
@vibeflui/mantineMantine field adapter and adapter metadata.createMantinePluginmantinePlugin
@vibeflui/material-uiMaterial UI field adapter and adapter metadata.createMaterialUIPluginmaterialUIPlugin

Plugin setup pattern

Optional packages export plugin factories. Some also export a prebuilt plugin constant or alias; check the package page before importing one.

TSX
import { FluiKit, FluiKitProvider } from "@vibeflui/core";
import { createShadcnPlugin } from "@vibeflui/shadcn";

const shadcnPlugin = createShadcnPlugin();

export function UsersPage() {
  return (
    <FluiKitProvider plugins={[shadcnPlugin]}>
      <FluiKit schema={usersSchema} data={usersData} />
    </FluiKitProvider>
  );
}

FluiKitProvider merges plugin registry entries, providers, messages, themes, adapters, and inspector panels. Direct registry, provider, and message props override plugin-provided values when they use the same keys.

Runtime slots

Plugins can register these runtime slots:

SlotPurpose
fieldAdaptersCustom field rendering used through field.adapter.
renderersCustom table/detail renderers used through renderer.
componentsCustom UI components used by schema-driven surfaces.
validatorsRuntime field validation functions.
transformersRuntime request/response/value transformers.
actionHandlersRuntime handlers for create, update, delete, and custom actions.
handlersLegacy-compatible handler slot used by runtime execution.
permissionResolversRuntime permission checks.
optionLoadersRuntime option loading for fields and filters.
hooksRuntime lifecycle hooks.
eventsRuntime event callbacks.
classNameResolversRuntime class name resolution.
messageResolversRuntime message resolution.
computedResolversRuntime computed values.
providersData providers used by actions and endpoints.
messagesDefault message overrides.
themesTheme presets.
adaptersAdapter metadata for schema/config inspection.
inspectorPanelsOptional inspector panels.