frappe / frappe/builder

feat: Add a "Content Edit Mode" for non-technical users

Open
#572 1 comment 4 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
2.4k
Forks
534
Avg merge
1d 4h
Merged PRs (30d)
46

Description

### Summary

Introduce a simplified edit mode in Frappe Builder that allows non-technical users to safely update text content and images on existing pages, without exposing layout, styling, or code-editing capabilities.

### Problem

Frappe Builder is powerful but its full editor is overwhelming — and risky — for non-technical contributors (marketing, content editors, project owners). A small mistake (dragging a block, editing CSS, changing a class) can break the page layout. As a result, technical users end up handling routine content updates that should be self-service.

### Proposed solution

A toggleable **Content Edit Mode** that restricts the editor to in-place content changes only:

**Allowed in this mode:**
- Edit text content (inline, WYSIWYG-style)
- Replace images (upload / pick from library)
- Edit links (URL + label)
- Edit button labels and links

**Locked / hidden in this mode:**
- Block structure (no add / delete / move / reorder)
- Layout and spacing controls
- CSS / class / style editing
- Script editor and code blocks
- Component creation and data sources
- Page settings

### UX notes

- Toggle accessible from the top bar (e.g. "Content mode" / "Design mode")
- Visual cue: editable zones get a subtle outline on hover; everything else appears non-interactive
- Permission-based: a role (e.g. `Builder Content Editor`) could be restricted to this mode only, so non-technical users never see the full editor

### Why this matters

- Empowers non-technical teams to maintain pages independently
- Reduces accidental layout breakage
- Makes Builder viable as a CMS-like tool in organizations with mixed technical skill levels

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.