Here is a good search on github to find example NetlifyCMS setups in the wild: https://github.com/search?l=YAML&q=editorial_workflow&type=Code
www.kee.pm website
Using Hugo and NetlifyCMS:
config.yml
# Save changes to GitHub
backend:
name: github
repo: kee-org/www-kee-pm
branch: beta
# Use the Editorial workflow - https://github.com/netlify/netlify-cms/blob/master/docs/editorial_workflow.md
#publish_mode: editorial_workflow
# Save image uploads to /img/uploads - https://gohugo.io/themes/creation/#static
media_folder: "static/img/uploads"
public_folder: "/img/uploads"
# Collections
collections: # A list of collections the CMS should be able to edit
# Used in routes, ie.: /admin/collections/:slug/edit
- name: "article"
# Used in the UI, ie.: "New Post"
label: "News article"
# The path to the folder where the documents are stored
folder: "content/news"
# Allow users to create new documents in this collection
create: true
# Filename template e.g. YYYY-MM-DD-title.md
slug: "{{slug}}"
# The fields each document in this collection have
fields:
- {label: "Title", name: "title", widget: "string", tagname: "h1"}
- {label: "Body", name: "body", widget: "markdown"}
- {label: "Date", name: "date", widget: "datetime", format: "Y-MM-DDThh:mm:ssZ"}
- {label: "Tags", name: "tags", widget: "tags"}
netlify.toml
With accompanying netlify.toml
configuration file for this Hugo project:
# Global settings applied to the whole site.
[build]
publish = "public"
command = "hugo"
[context.production.environment]
HUGO_ENV = "production"
[context.deploy-preview]
command = "hugo --baseURL $DEPLOY_PRIME_URL"
# --buildDrafts --buildFuture might be useful one day?
# Branch Deploy context: All deploys that are not in
# an active Deploy Preview will inherit these settings.
[context.branch-deploy]
command = "hugo --baseURL $DEPLOY_PRIME_URL"
Cereus Pro Hugo Theme
https://github.com/arhen/hugo-cereus-pro-theme/blob/master/static/admin/config.yml
backend:
name: git-gateway
repo: {{ with .Site.Params.githubRepo }}{{ . }}{{ end }} # Path to your GitHub repository
branch: master # Branch to update (optional; defaults to master)
publish_mode: editorial_workflow # adds an interface for drafting, reviewing, and approving posts
media_folder: "static/images/uploads"
public_folder: "images/uploads"
collections:
- label: "Pages"
name: "pages"
files:
- label: "About Page"
name: "about"
file: "content/about/_index.md"
fields:
- {label: "Title", name: "title", widget: "string"}
- {label: "Description", name: "description", widget: "text"}
- {label: "Publish Date", name: "date", widget: "datetime"}
- {label: "Body", name: "body", widget: "markdown"}
- label: "Now Page"
name: "now"
file: "content/now/_index.md"
fields:
- {label: "Title", name: "title", widget: "string"}
- {label: "Description", name: "description", widget: "text"}
- {label: "Publish Date", name: "date", widget: "datetime"}
- {label: "Body", name: "body", widget: "markdown"}
- name: "blog"
label: "Blog"
folder: "content/blogs"
create: true
slug: "{{slug}}"
fields:
- {label: "Title", name: "title", widget: "string"}
- {label: "Description", name: "description", widget: "text"}
- {label: "Publish Date", name: "date", widget: "datetime"}
- {label: "Tags", name: "tags", widget: "list"}
- {label: "Body", name: "body", widget: "markdown"}
One Click Hugo CMS
config.yml
https://github.com/netlify-templates/one-click-hugo-cms/blob/master/site/static/admin/config.yml