Skip to content

Editorial Workflow

This is an advanced remote workflow designed for teams that require a review process before changes are merged into the default branch. Editors can submit changes for review, and designated reviewers can approve or request modifications.

Unimplemented

This feature is not yet supported in Sveltia CMS. It will be added in the near future.

Use Cases

  • Teams of content creators and editors working on collaborative projects.
  • Projects that require a formal review and approval process for content changes.
  • Situations where content quality and consistency are critical, necessitating oversight.
  • Workflows that involve multiple stages of review, such as draft, review, and publish.

Requirements

The GitHub or GitLab backend must be used.

Future Plans

Support for the Gitea/Forgejo backend may be added in the future.

Configuration

Add the publish_mode option to the top level of your CMS configuration file:

yaml
publish_mode: editorial_workflow
toml
publish_mode = "editorial_workflow"
json
{
  "publish_mode": "editorial_workflow"
}
js
{
  publish_mode: 'editorial_workflow',
}

Additionally, you can enable squash merging for pull/merge requests by adding the squash_merges option to the backend section of your configuration file. If this options is enabled, all commits in a pull/merge request will be squashed into a single commit when merged. Otherwise, a merge commit will be created.

yaml
backend:
  name: github
  repo: user/repo
  squash_merges: true
toml
[backend]
name = "github"
repo = "user/repo"
squash_merges = true
json
{
  "backend": {
    "name": "github",
    "repo": "user/repo",
    "squash_merges": true
  }
}
js
{
  backend: {
    name: 'github',
    repo: 'user/repo',
    squash_merges: true,
  },
}

See the GitHub or GitLab documentation for more information about squash merging.

Released under the MIT License.