Maple
⌘K
DOCUMENTATIONv2.0.17

Dynamic Data as CSS

Modern applications are driven by dynamic data—from CMS content, API responses, or user preferences. Build-time styling systems struggle here because they must know every class name in advance.

The result is a familiar bottleneck: styling is locked into a fixed set of developer-approved presets. Content teams can choose size="small" or color="blue", but anything beyond that requires a code change and a redeploy.

Maple treats dynamic data exactly like static class names, so styles can be generated directly from runtime values—without escaping the design system.

For Developers

You can interpolate variables directly into utility classes, including arbitrary runtime values. Unlike inline styles, these utilities retain full support for states, media queries, and variants.

Dynamic Interpolation
<div className={`md:bg-${userColor} w=${progress}%`}></div>

For Content Teams

In a headless CMS, editors can supply utility strings as data, for example: fs-xl fw-bold c-blue-600. Layouts, typography, and visual variants can be adjusted instantly—without touching code or triggering a deployment.

A Note on Dynamic Values
While Maple enables incredibly flexible designs, with great runtime power comes the responsibility of memory management. Generating classes with dynamic or highly variable runtime values (e.g., generating a unique class for every 1px of a user's mouse movement) can cause unnecessary CSSOM growth over the lifecycle of a single page if not carefully constrained.
ESC

Start typing to search across the documentation.