🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Sign inDemoInstall
Socket

payload-kanban-board

Package Overview
Dependencies
Maintainers
1
Versions
35
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

payload-kanban-board

A kanban board plugin for Payload CMS

3.0.24
latest
Source
npm
Version published
Maintainers
1
Created
Source

Payload kanban plugin

Note This plugin is currently under active development and still in an early stage. Check the roadmap below in this readme for more details / upcoming features.

Shows an image illustrating the payload-kanban-board plugin

Installation

The most recent version of payload-kanban-board currently only supports Payload 3.0 and up.

$ yarn add payload-kanban-board
$ npm i payload-kanban-board

To use it on payload version < 3.0

$ yarn add payload-kanban-board@1.0.3
$ npm i payload-kanban-board@1.0.3

Basic usage

import { payloadKanbanBoard } from 'payload-kanban-board';

const config = buildConfig({
  collections: [ ... ],
  plugins: [
    payloadKanbanBoard({
      collections: {
        posts: {
          enabled: true,
          config: {
            statuses: [
              {
                value: 'draft',
                label: 'Draft',
              },
              { value: 'in-progress', label: 'In Progress' },
              {
                value: 'ready-for-review',
                label: 'Ready for review',
                dropValidation: ({ user, data }) => {
                  return { dropAble: false }
                  //<dropValidation key is optional>
                },
              },
              { value: 'published', label: 'Published' },
            ],

            defaultStatus: 'todo',
            hideNoStatusColumn: true,
          },
        },
      },
    })
  ],
});

To use it on payload version < 3.0

import { payloadKanbanBoard } from 'payload-kanban-board';

const config = buildConfig({
  collections: [ ... ],
  plugins: [
    payloadKanbanBoard({
      'my-collection-slug': {
        statuses: [
          {value: 'draft', label: 'Draft', dropValidation:({user,data})=>return true}, //<dropValidation key is optional>
          {value: 'in-progress', label: 'In Progress'},
          {value: 'ready-for-review', label: 'Ready for review'},
          {value: 'published', label: 'Published'},
        ],
        defaultStatus: 'draft',
        hideNoStatusColumn: false,
        fieldAccess:{
          // <These fields are optional>
          update:() => true,
          create:() => false,
          read:() => false,
        },
        fieldAdmin: {
          // <These fields are optional>
          hidden:true
          // Any admin props for a normal field in payload cms
        },

      }
    })
  ],
});

Differences with the draft/publish system of Payload.

The kanban plugin introduces a new field called kanbanStatus. This field does not interact with the draft/publish system of Payload.

You can "integrate" the kanban status with the draft/publish system of Payload yourself by using Payloads hooks.

For example: Automatically publish the document when the kanbanStatus has been changed to published.

Roadmap

Upcoming Features / Ideas. Have a suggestion for the plugin? Feel free to open an issue or contribute!
  • Payload 2.0 support
  • Payload 3.0 support
  • Customize card properties (currently displays title and createdAt)
  • Edit relationships directly from the card (e.g., assigning users to a document)
  • Toggleable column for posts without a kanban status (Currently, documents lacking kanbanStatus aren't visible on the board)
  • Lazy loading of column contents when scrolling (Currently, board only shows defaultLimit amount of cards)
  • Validation for changing statuses
  • Allowed transitions between statuses
  • Integration with the draft/publish system of Payload (?)

Keywords

payload

FAQs

Package last updated on 23 Mar 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts