Skip to Content

Custom

Use a custom plugin when the built-in providers do not match your runtime, storage, delivery, or routing requirements.

Custom plugins are configured in oberon/config.ts like any other plugin:

oberon/config.ts
import { defineConfig } from "@oberoncms/core" import { authPlugin } from "@oberoncms/core/auth" import { plugin as developmentPlugin } from "@oberoncms/plugin-development" import { plugin as myPlugin } from "./my-plugin" import { clientConfig } from "./client.config" export const config = defineConfig({ client: clientConfig, plugins: [developmentPlugin, myPlugin, authPlugin], })

This section covers:

  • the OberonPlugin return shape
  • the full OberonPluginAdapter surface grouped by its constituent parts
  • custom route handlers via OberonHandler
  • the OberonAdapter passed into each handler factory

Use Plugin Shape first, then move to Adapter Hooks or Handler Hooks depending on what your plugin needs to add.

Last updated on