UX Specs: System Console Panels
Overview
The System Console currently relies on inconsistent patterns and components to achieve the same goals. When grouping multiple settings in a section, we use several different methods and components — each with its own unique styling and structure.
This inconsistency leads to two key issues:
User Experience: Administrators encounter an uneven and sometimes confusing interface, as similar elements look and behave differently across the console.
Developer Overhead: Maintaining multiple approaches to the same UI problem increases code complexity, duplication, and long-term maintenance costs.
To address these challenges, this proposal outlines a plan to standardize the structure, styling, and composition of System Console panels into a single, flexible component system.
Current State
Inconsistent Component Usage
The same functional goals — such as grouping related settings — are currently achieved using a variety of approaches (e.g., AdminPanel, Card, AccordionCard, .config-section class, EnableSectionContent, EditSection). Each has its own markup, styling, and interaction patterns
Visual and Structural Fragmentation
Panel layouts, padding, headers, and section organization differ significantly from one page to another. For example:
Inconsistent title styling and spacing
Buttons, toggles, and metadata often appear in inconsistent positions.
Expansion and collapse behavior varies widely across sections.
Engineering and Maintenance Costs
Supporting multiple patterns for the same UI purpose increases complexity in several ways:
Duplication of components and logic.
Greater difficulty introducing new features or making global UI changes.
Harder onboarding for new contributors.
Examples
Component: Admin Panel
Component: Card
Component: Accordion Card
Class: config-section
Component: EnableSectionContent
Component: EditSection
Proposed Solution: A Unified Panel System
The proposal is to consolidate all sectioned console panels into a single, reusable panel component with a consistent structure and shared styling. This unified pattern will support a range of use cases while maintaining visual and functional consistency across the console.
In addition, we can create a re-usable style for the panel container to ensure it’s applied consistently across the admin console.
Consolidating Styles for Admin Panels
For the outer admin panel containers, there is a set of common styles to apply to the container as follows:
border-radius: var(--radius-m);
border: 1px solid rgba(var(--center-channel-color-rgb, 0.12));
background: var(--center-channel-bg);
color: var(--center-channel-color);
box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.08);Which translates to a container that looks like this:
Examples
Here are a few examples of panels throughout the console that should be using this common style for the container.
Consolidating Components for sectioned admin panels
A typical panel has a header, body and footer component to it.
Panel header (optional)
The panel header has a number of optional elements. At the very base, it should have the title, but could include a subtitle, icon, button, expandable/collapse icon. Below are a few examples of this.
Panel body (required)
The panel body, could almost be any content. Below are some examples:
AD/LDAP Groups Panel with data table
Teams panel in the User detail view
Workspace optimization panel with expandable body
Feature discovery panel (no header or footer)
Panel footer (optional)
The panel footer is optional and may include 1 or more buttons. Here is one such example.
Next Steps
Finalize the panel component design and collaborate Engineering on implementation details.
Build and test the unified
ConsolePanelcomponent.Begin phased migration, starting with high-impact console areas.
Roll out documentation and communicate changes to contributors.