gecut

payload editor

by gecut
nexload-sdk
Rich text & editors
v3
>=3.68.5 <4

Overview

Summary generated from the README

Provides a createEditor function that builds a Lexical editor configuration for Payload 3 from named presets or an explicit feature definition. Features can be toggled or tuned with options, and native Payload Lexical features can be appended as extensions. It is ESM-only, server and config safe, and requires Payload 3.68.5 or newer below version 4.

Features

  • Five built-in presets: compact, standard, structured-content, article and product-description
  • Define reusable custom presets with defineEditorPreset
  • Per-feature options such as heading sizes and upload allowed collections
  • Extend with native Payload Lexical features, with duplicate feature keys failing synchronously
  • Relational features default to a max depth of 1
  • No React, admin UI or CSS runtime included

Use cases

  • Standardize rich text editor setups across many collections in a Payload project
  • Restrict editors to a limited set of headings, links and uploads for structured content
  • Share a consistent editor configuration between multiple Payload projects

From the author

Semantic, deterministic Payload Lexical editor configuration.

Installation

npm i @nexload-sdk/payload-editor

2

Stars

0

Forks

0

Open Issues

Today

Last Updated

4

Weekly Downloads

v1.1.0

npm Version

56.7 KB

Unpacked Size

0

Dependencies

Repository stars

Trends appear after 7 days of data. Collecting since Oct 22 — 1 daily snapshot so far.

Shared by 4 plugins in gecut/nexload-sdk.

npm weekly downloads

Trends appear after 7 days of data. Collecting since Oct 22 — 1 daily snapshot so far.

Each point is npm's rolling 7-day download count.

Health Score

56/100Good

Composite score based on GitHub activity, stars, npm downloads, publish recency, dependency count, and package size.

Badge for your README

Payload Directory health badge
Markdown
[![Payload Directory](https://payloaddirectory.dev/badge/1086380959-payload-editor.svg)](https://payloaddirectory.dev/plugins/1086380959-payload-editor)
HTML
<a href="https://payloaddirectory.dev/plugins/1086380959-payload-editor"><img src="https://payloaddirectory.dev/badge/1086380959-payload-editor.svg" alt="Payload Directory"></a>
Updated Oct 22, 2026Created Oct 30, 2025Published Jul 20, 2026

README

@nexload-sdk/payload-editor

Semantic, deterministic Payload Lexical editor configuration for Payload 3.

Documentation · API reference

Install

pnpm add @nexload-sdk/payload-editor payload @payloadcms/richtext-lexical

Keep payload and every @payloadcms/* package on the exact same version. Supported peer range: >=3.68.5 <4.

Quick start

import { createEditor } from "@nexload-sdk/payload-editor";

export const editor = createEditor({
  preset: "structured-content",
  features: {
    heading: { sizes: ["h2", "h3"] },
    upload: { allowedCollections: ["media"], maxDepth: 1 },
  },
});

There is no implicit default. Supply a preset or an explicit features definition.

Reusable preset

import { createEditor, defineEditorPreset } from "@nexload-sdk/payload-editor";

const landingContent = defineEditorPreset({
  features: {
    paragraph: true,
    heading: { sizes: ["h2", "h3"] },
    bold: true,
    link: true,
    inlineToolbar: true,
  },
});

export const editor = createEditor({ preset: landingContent });

Native extension

import { BlocksFeature } from "@payloadcms/richtext-lexical";
import { createEditor } from "@nexload-sdk/payload-editor";

export const editor = createEditor({
  preset: "article",
  extendFeatures: [BlocksFeature({ blocks: [Callout, Gallery] })],
});

Extensions append after managed features. Duplicate feature keys fail synchronously. Disable a managed feature before supplying a native replacement.

Presets

  • compact
  • standard
  • structured-content
  • article
  • product-description

Preset membership and defaults are versioned contracts. true resets a feature to Nexload adapter defaults, false disables it, and option objects shallow-merge with array replacement.

Runtime

  • ESM-only and server/config safe.
  • No React, Admin UI, CSS, browser globals, AI provider, or theme runtime.
  • Relational preset features default to maxDepth: 1.
  • Block code is native opt-in through Payload Blocks; inlineCode is the managed inline format.

See the canonical documentation for feature mappings, presets, extensions, errors, and migration guidance.

Similar plugins