Registry themes
OpenG2P Registry Gen2 - Theme Management Design
Repositories
registry-platform/core/openg2p-registry-core
registry-gen2-apis
Models
Existing Models - Changes
g2p_registry_configuration
New Attribute: registry_theme_id
New Models
registry_themes
theme_id
UUID/Integer
PK
theme_mnemonic
String(50)
NOT NULL, UNIQUE
is_factory_shipped
Boolean
NOT NULL
registry_theme_values
theme_value_id
UUID/Integer
PK
theme_id
UUID/Integer
Non-Unique Index
attribute_name
ENUM
NOT NULL
attribute_value
LONGTEXT
NOT NULL
Theme Attributes (attribute_name ENUM)
primary_color_1
primary_color_2
secondary_color_1
secondary_color_2
secondary_color_3
neutral_color_1
neutral_color_2
font_family
font_url
dashboard_image
API Methods
Endpoint: /registry-configuration (existing controller)
get_registry_configuration (POST)
Get registry configuration
Response: registry configuration object with theme reference
update_registry_configuration (POST)
Update registry configuration
Response: updated configuration
Endpoint: /registry-theme (new controller)
get_all_themes (POST)
Get all available themes
Response: list of themes
create_theme (POST)
Create custom theme (non-factory)
Request: { theme_mnemonic, theme_values[] }
Response: theme_id
remove_theme (POST)
Delete custom theme (factory-shipped cannot be deleted)
Request: { theme_id }
Response: success confirmation
update_theme_values (POST)
Update theme values (all 10/12 attributes together)
Request: { theme_id, theme_attribute_values[] }
Response: theme_id
get_theme_values (POST)
Get all theme values for a theme
Request: { theme_id }
Response: list of theme attribute values
Last updated
Was this helpful?