decaporg / decaporg/decap-cms

Implement a 'Settings' or 'Data' flag for files

Open
#534 1 comment 22 reactions 0 assignees View on GitHub
area: configuration area: ui kind: discussion pinned
Dominant language
JavaScript
Stars
19.4k
Forks
3.1k
Avg merge
1d 14h
Merged PRs (30d)
9

Description

There has been quite a bit of in person and virtual conversation about this; documenting here for decision making.

### The idea:
Introduce an optional flag, such as `type: data` or `settings: true`, that allows developers of a site to list a collection of files (json/yml/toml?) as a settings/data type rather than a traditional content type. This is applicable for settings data that is referenced elsewhere but not directly published, such as 'Authors', and 'Site Settings' as demonstrated in the official CMS demo: https://cms-demo.netlify.com/#/collections/settings

This is important to separate, as users expect a different experience for this different content. Traditional, published content expects WYSIWYG writing environment, with a content preview. Data/settings often would not have a WYSIWYG writing environment, and does not need a content preview. You additionally would not apply the editorial workflow to data/settings.

This additionally paves the way for user roles and a smarter interface aware that authors want to write content not cluttered with data/settings files. You could optionally assign access to
'Content' and not to 'Settings' for authors.

![screen shot 2017-08-16 at 4 01 44 pm](https://user-images.githubusercontent.com/1312538/29388954-404ca840-829c-11e7-8df2-fe9e30de3670.png)

/cc @erquhart @verythorough @biilmann

Contributor guide

Open the contributing guide

Research direction

The issue names no files, tests, or entry points. Start by reviewing the proposed data/settings distinction and the linked CMS demo, then define the flag's configuration, editor, preview, workflow, and role-access behavior before implementation.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, react
Domain
content, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.