From 08c520e3dcfff9302ea12949d70c06baed194539 Mon Sep 17 00:00:00 2001 From: Steven Le <387282+stevenle@users.noreply.github.com> Date: Tue, 17 Feb 2026 11:43:45 -0800 Subject: [PATCH 1/3] feat(root-cms): add minimalBranding header option --- packages/root-cms/core/app.tsx | 1 + packages/root-cms/core/plugin.ts | 6 ++++++ packages/root-cms/ui/layout/Layout.css | 4 ++++ packages/root-cms/ui/layout/Layout.tsx | 27 ++++++++++++++++++-------- packages/root-cms/ui/ui.tsx | 1 + 5 files changed, 31 insertions(+), 8 deletions(-) diff --git a/packages/root-cms/core/app.tsx b/packages/root-cms/core/app.tsx index 36a5fb50d..f326e5667 100644 --- a/packages/root-cms/core/app.tsx +++ b/packages/root-cms/core/app.tsx @@ -100,6 +100,7 @@ export async function renderApp( rootConfig: { projectId: cmsConfig.id || 'default', projectName: cmsConfig.name || cmsConfig.id || '', + minimalBranding: cmsConfig.minimalBranding ?? false, domain: rootConfig.domain || 'https://example.com', base: rootConfig.base || '/', gci: gci, diff --git a/packages/root-cms/core/plugin.ts b/packages/root-cms/core/plugin.ts index 35698516e..4e70974ab 100644 --- a/packages/root-cms/core/plugin.ts +++ b/packages/root-cms/core/plugin.ts @@ -218,6 +218,12 @@ export type CMSPluginOptions = { */ favicon?: string; + /** + * Enables minimal branding mode in the CMS header. This hides the Root CMS + * logo and displays the project name on the top-right. + */ + minimalBranding?: boolean; + /** * Callback when an action occurs. */ diff --git a/packages/root-cms/ui/layout/Layout.css b/packages/root-cms/ui/layout/Layout.css index 6bb4bc660..2cf5f072e 100644 --- a/packages/root-cms/ui/layout/Layout.css +++ b/packages/root-cms/ui/layout/Layout.css @@ -47,6 +47,10 @@ margin-left: 16px; } +.Layout__top__project--minimal { + margin-left: auto; +} + .Layout__top__logo:hover { background-color: var(--button-background-hover); } diff --git a/packages/root-cms/ui/layout/Layout.tsx b/packages/root-cms/ui/layout/Layout.tsx index 4d78ed28b..ea12e45c2 100644 --- a/packages/root-cms/ui/layout/Layout.tsx +++ b/packages/root-cms/ui/layout/Layout.tsx @@ -45,16 +45,27 @@ export function Layout(props: LayoutProps) { } Layout.Top = () => { - const projectName = - window.__ROOT_CTX.rootConfig.projectName || - window.__ROOT_CTX.rootConfig.projectId; + const rootConfig = window.__ROOT_CTX.rootConfig; + const projectName = rootConfig.projectName || rootConfig.projectId; + const minimalBranding = rootConfig.minimalBranding; return (