payload-kanban-board
v1.0.11
Published
A kanban board plugin for Payload CMS
Downloads
16
Maintainers
Readme
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.
Installation
The most recent version of payload-kanban-board currently only supports Payload 2.0 and up.
$ yarn add payload-kanban-board
$ npm i payload-kanban-board
Basic usage
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
.
- [x] Payload 2.0 support
- [ ] Customize card properties (currently displays
title
andcreatedAt
) - [ ] Edit relationships directly from the card (e.g., assigning users to a document)
- [x] 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) - [x] Validation for changing statuses
- [ ] Allowed transitions between statuses
- [ ] Integration with the draft/publish system of Payload (?)