SDK reference

@olgax.com/sdk is a thin wrapper around Puck's config API. registerComponent() is the only public entry point.

import { registerComponent } from "@olgax.com/sdk";

registerComponent("MyComponent", {
  fields: {
    title: { type: "text" },
  },
  defaultProps: {
    title: "Hello",
  },
  render: ({ title }) => <h2>{title}</h2>,
});

A consuming app builds its Puck Config from everything registered so far:

import { getRegisteredComponents } from "@olgax.com/sdk";
import type { Config } from "@puckeditor/core";

export const config: Config = { components: getRegisteredComponents() };

@olgax.com/components already does this for the default component library - see packages/components/src/index.ts.