Project Data Configuration
Overview
The project data stores global configurations such as style presets, color palettes, typography settings, and responsive design variants. These configurations are essential for customizing the appearance and behavior of the application. This setup is particularly useful when you need multi-page functionality, as it allows the sharing of project data across multiple pages with consistent functionality, the same functionality when using Brizy.io.
The project data configuration is stored in JSON format, and it defines the following:
- Style presets
- Color palettes
- Typography settings for various text elements
- Responsive design variants
Structure
Top-Level Properties
| Property | Description |
|---|---|
selectedKit | The ID of the currently selected kit |
selectedStyle | The ID of the currently active style from the styles array |
styles | Array of style configuration objects |
extraFontStyles | Array of custom typography presets (same schema as fontStyles; can be empty) |
font | The default font for the application |
fonts | Font registry (config, google, blocks, upload); see Fonts object |
Style Object
Each style in the styles array includes:
id: Unique identifier for the styletitle: Human-readable name for the stylecolorPalette: Array of color objects defining the style's color schemefontStyles: Array of font style configurations for different text elements
Requirements
Color Palette Requirements
Each style must have a color palette with exactly 8 colors:
colorPalette: [
{ id: "color1", hex: "#XXXXXX" },
{ id: "color2", hex: "#XXXXXX" },
{ id: "color3", hex: "#XXXXXX" },
{ id: "color4", hex: "#XXXXXX" },
{ id: "color5", hex: "#XXXXXX" },
{ id: "color6", hex: "#XXXXXX" },
{ id: "color7", hex: "#XXXXXX" },
{ id: "color8", hex: "#XXXXXX" },
];
Font Style Requirements
Each style must include exactly these 10 font styles in this specific order:
- paragraph
- subtitle
- abovetitle
- heading1
- heading2
- heading3
- heading4
- heading5
- heading6
- button
Deletable Property
All font styles must have "deletable": "off". This property is used to hide the delete button from the UI and prevent users from removing essential styles.
Font Families
All font families referenced in the style definitions must exist in the fonts configuration section. Any undefined fonts will cause errors in the application.
Font Style Properties
Each font style item includes the following. The Basic properties and Responsive properties sections list fields that are required for a full preset. Text style and casing, Superscript and subscript, and Variable font axes are optional and may be omitted (booleans default to false when missing).
Basic Properties
| Property | Description |
|---|---|
deletable | Must be "off" for required styles |
id | Style identifier (e.g., "paragraph") |
title | Human-readable style name |
fontFamily | Font family name |
fontFamilyType | Font source (e.g., "google") |
fontSize | Font size for desktop |
fontSizeSuffix | Unit for font size (typically "px") |
fontWeight | Font weight (100-900) |
lineHeight | Line height multiplier |
letterSpacing | Letter spacing value |
Text style and casing
These boolean flags control typography appearance. They are stored on each font style item (same shape as in the editor’s typography controls). If omitted, the application treats them as false.
| Property | Description |
|---|---|
bold | When true, the global bold CSS variable uses the keyword bold instead of the numeric fontWeight. |
italic | Italic (font-style). |
underline | Underline (text-decoration). |
strike | Strikethrough / line-through (text-decoration). |
uppercase | Uppercase text transform. |
lowercase | Lowercase text transform. |
Superscript and subscript (optional)
| Property | Description |
|---|---|
script | Optional. Superscript / subscript: empty string "" (none), "super", or "sub". |
Variable font axes (optional)
Optional numeric settings for variable fonts. If omitted, defaults apply when generating global typography (for example weight 400, width 100, softness 0). Each axis has desktop, tablet, and mobile fields where applicable.
| Property | Description |
|---|---|
variableFontWeight | Variable font weight axis (desktop). |
fontWidth | Variable font width axis (desktop). |
fontSoftness | Variable font softness axis (desktop). |
tabletVariableFontWeight | Weight axis for tablet. |
tabletFontWidth | Width axis for tablet. |
tabletFontSoftness | Softness axis for tablet. |
mobileVariableFontWeight | Weight axis for mobile. |
mobileFontWidth | Width axis for mobile. |
mobileFontSoftness | Softness axis for mobile. |