#local_backend: true

backend:
  name: github
  repo: acopphetech-tech/acoppheblog
  branch: main
  # Point Decap CMS at our own OAuth proxy on Vercel.
  # /api/auth   → opens GitHub login
  # /api/callback → exchanges code for token
  base_url: https://acoppheblog.vercel.app
  auth_endpoint: api/auth

media_folder: "src/images/uploads"
public_folder: "/images/uploads"

collections:

  - name:   "categories"
    label:  "Categories"
    folder: "src/data/categories"
    create: true
    slug:   "{{slug}}"
    identifier_field: name
    summary: "{{name}}"
    fields:
      - label: "Category Name"
        name:  "name"
        widget: "string"
        hint:  "e.g. Planetary Health  or  Indigenous Knowledge"
      - label: "Description (optional)"
        name:  "description"
        widget: "text"
        required: false
        hint:  "One sentence describing this category."

  - name:   "posts"
    label:  "Posts"
    folder: "src/posts"
    create: true
    slug:   "{{slug}}"
    fields:
      - { label: "Title",  name: "title",  widget: "string" }
      - { label: "Date",   name: "date",   widget: "datetime" }
      - { label: "Layout", name: "layout", widget: "hidden", default: "post.njk" }
      - label:    "Featured Image"
        name:     "image"
        widget:   "image"
        required: false
        hint:     "Header background and blog card thumbnail."
      - label:    "Excerpt"
        name:     "excerpt"
        widget:   "text"
        required: false
        hint:     "1–2 sentences shown on the blog card. Keep under 160 characters."
      - label:      "Category"
        name:       "category"
        widget:     "relation"
        collection: "categories"
        search_fields: ["name"]
        value_field:   "name"
        display_fields: ["name"]
        required:   false
        hint:       "Pick from the list. Add new categories in the Categories section first."
      - label:    "Tags"
        name:     "tags"
        widget:   "list"
        required: false
        hint:     "Add keywords one at a time, press Enter after each."
      - label:    "Author Name"
        name:     "author"
        widget:   "string"
        required: false
      - label:    "Author Role / Title"
        name:     "authorRole"
        widget:   "string"
        required: false
      - label:    "Author Photo"
        name:     "authorImage"
        widget:   "image"
        required: false
        hint:     "Square headshot."
      - label:    "Author Bio"
        name:     "authorBio"
        widget:   "text"
        required: false
      - label:      "Reading Time (minutes)"
        name:       "readingTime"
        widget:     "number"
        required:   false
        value_type: "int"
        min:        1
        max:        60
      - label:  "Body"
        name:   "body"
        widget: "markdown"