frappe / frappe/suite

[feat] token-based theming

Open
#232 0 comments 1 reaction 1 assignee Claimed by @GursheenK View on GitHub
feature request slides
Dominant language
TypeScript
Stars
83
Forks
42
Avg merge
7h 55m
Merged PRs (30d)
178

Description

### App

Slides

### Problem / motivation

Changing a presentation's theme only affects newly added slides. Existing slides keep their original styling because theme values are copied at slide-creation time.

### Proposed solution

Introduce theme tokens via CSS custom properties. Elements store values like `color: var(--theme-text-body)`, the editor root binds the vars from the theme's palette, and a theme change re-renders everything instantly with no data rewrite. Old decks with literal hex values keep rendering unchanged, so no migration is needed.

Scope: palette JSON field on template Presentations, tokenized Light/Dark fixtures, CSS var binding in the editor, tokenized new-element defaults, and picker UX with theme swatches (custom hex detaches from theme). Existing content is not retro-tokenized.

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.