Skip to content

PR9: feat(v9): dense flat buttons, observability colors, remove XS size#1706

Open
anirudha wants to merge 17 commits intoopensearch-project:mainfrom
anirudha:v9-theme-colors-buttons
Open

PR9: feat(v9): dense flat buttons, observability colors, remove XS size#1706
anirudha wants to merge 17 commits intoopensearch-project:mainfrom
anirudha:v9-theme-colors-buttons

Conversation

@anirudha
Copy link
Copy Markdown

V9 Theme: Dense Buttons, Flat Styling & Observability Colors

Branch: v9-theme-colors-buttonstheme-update

Summary

Modernizes the V9 theme buttons to be denser and flatter (shadcn/ui-inspired), updates the visualization palette for observability use cases, and removes the extra-small button size.

Changes

1. Dense Button Sizing (_buttons.scss)

  • Default height: 48px → 32px ($ouiSizeXXL$ouiSizeXL)
  • Small height: 40px → 24px ($ouiSizeXL$ouiSizeL)
  • Extra-small: collapsed into Small (same 24px height)
  • Hover transitions: 100ms → 50ms with ease-out for near-instant feedback

2. Flat Button Styling — NEW (_button.scss)

  • Unfilled buttons: neutral $ouiBorderColor border + subtle shadow (opacity .04), hover bumps to .06
  • Filled buttons: completely flat (no shadow), bg darkens 5% on hover, 10% on active
  • Ghost and disabled variants: all shadows removed
  • ButtonIcon and ButtonEmpty: consistent border-radius treatment

3. Tighter Border Radii (_borders.scss)

  • Default: 8px → 6px
  • Small: 6px → 4px
  • Large: 12px → 10px

4. Observability Visualization Palette (_colors.scss)

Updated $ouiPaletteColorBlind (Vis0–Vis15) for monitoring/SRE dashboards:

Slot Color Hex Use Case
Vis0 Emerald #10B981 Healthy / OK
Vis1 Blue #3B82F6 Informational / metrics
Vis2 Amber #F59E0B Warning / degraded
Vis3 Red #EF4444 Critical / error
Vis4 Violet #8B5CF6 Traces / latency
Vis5 Cyan #06B6D4 Network / throughput
Vis6 Pink #EC4899 Anomaly / alert
Vis7 Orange #F97316 Saturation / load
Vis8 Teal #14B8A6 Availability / uptime
Vis9 Indigo #6366F1 Deployment / change
Vis10 Slate #94A3B8 Baseline / neutral
Vis11 Rose #E11D48 Severity high
Vis12 Blue-600 #2563EB Primary metric
Vis13 Emerald-600 #059669 SLA met
Vis14 Violet-600 #7C3AED P99 latency
Vis15 Orange-600 #EA580C Error rate

5. Dark Theme Code Block Colors (v9_colors_dark.scss)

Updated syntax highlighting to match observability palette (brighter variants for dark bg):

  • Comments: Slate-400, Strings: Pink-400, Names: Blue-400
  • Numbers: Emerald-400, Keywords: Violet-400, Titles: Orange-400

6. Docs: Remove Extra-Small Button (button.js, button_empty.js)

  • Removed all size="xs" button examples from docs
  • Converted remaining XS icon examples to Small (size="s")

Files Changed

File Type
src/themes/v9/components/_button.scss New
src/themes/v9/components/_index.scss Modified
src/themes/v9/global_styling/variables/_buttons.scss Modified
src/themes/v9/global_styling/variables/_borders.scss Modified
src/themes/v9/global_styling/variables/_colors.scss Modified (committed)
src/themes/v9/v9_colors_dark.scss Modified (committed)
src-docs/src/views/button/button.js Modified
src-docs/src/views/button/button_empty.js Modified

Testing

  • yarn start → verified at http://localhost:8030
  • Webpack compiles both v9-light and v9-dark without errors
  • Button page renders correctly with only Default and Small sizes
  • Color page shows updated observability palette
  • Hot reload works for all changes

ruanyl and others added 16 commits February 5, 2026 18:25
Signed-off-by: Yulong Ruan <ruanyl@amazon.com>
Signed-off-by: Yulong Ruan <ruanyl@amazon.com>
Signed-off-by: Yulong Ruan <ruanyl@amazon.com>
Signed-off-by: Yulong Ruan <ruanyl@amazon.com>
- Change primary font from 'Rubik' to 'Noto Sans' with sans-serif fallbacks
- Change code font from 'Source Code Pro' to 'Roboto Mono' with monospace fallbacks
- Changes isolated to v9 theme only; other themes unaffected

Signed-off-by: Kiro Agent <kiro@amazon.com>
…d docs

- Add 6-level shadow token system ($ouiShadow1-6) with configurable opacity
- Add ouiElevation, ouiLocalElevation, ouiElevatedSurface SASS mixins
- Add dark theme shadow opacity override (0.80) and elevated surface CSS custom properties
- Add useElevation React hook and OuiElevationProvider for dynamic z-index management
- Add elevation documentation page with shadow levels, dark theme, hook, and local elevation demos
- Add unit tests for elevation hook and provider

Signed-off-by: Kiro Agent <kiro@amazon.com>
… size

- Shift v9 dark palette from blue-tinted Slate to neutral Zinc grays
- Add layered depth: page (Zinc-950) → cards (Zinc-900) → elevated (Zinc-800)
- Add light glow ring to shadow levels for visible elevation in dark mode
- Increase shadow spread and opacity for perceptible depth differentiation
- Fix header dark background from navy (opensearch-project#1522) to neutral (#18181B)
- Replace text-decoration underline hover with subtle background tint on buttons, button groups, and tabs
- Add size='xs' (24px) extra-small button variant with OuiXSmallButton convenience component
- Update button docs with xs size examples across all color variants

Signed-off-by: Anirudha Jadhav <anirudha@amazon.com>
Deploys the built docs site to GitHub Pages on push to main and
feature branches. Uses the official GitHub Pages actions.

Signed-off-by: Anirudha Jadhav <anirudha@amazon.com>
Matches ruanyl/oui setup — builds docs and pushes to gh-pages branch.
GitHub's built-in pages-build-deployment then serves it automatically.

Signed-off-by: Anirudha Jadhav <anirudha@amazon.com>
- Side nav hover: 0.6 → 0.35 transparency, active: 0.3 → 0.15
- List group hover: 0.75 → 0.5 transparency
- Focus background: 65% → 50% dark theme tint for stronger visibility
- Context menu: replace underline hover with background tint

Signed-off-by: Anirudha Jadhav <anirudha@amazon.com>
…nents

Replace underline hover states with background color tints for a cleaner,
more modern look. Underlines are preserved only on actual link components
(OuiLink) and code syntax highlighting where they are semantically correct.

Components updated: selectable, combo_box, accordion, badge, card, table,
facet, filter_group, steps, list_group, context_menu, control_bar, image,
date_picker, super_date_picker, file_picker, expression, pagination.

Also updated global and oui-next theme hover/button mixins.

Signed-off-by: Anirudha Jadhav <anirudha@amazon.com>
Add transparentize($ouiColorLightShade, .7) hover backgrounds to
accordion, badge, card, combo_box, context_menu, control_bar, expression,
facet, filter_group, steps, and table components. Also updated the global
ouiHoverState mixin across all three themes (default, oui-next, v9).

Signed-off-by: Anirudha Jadhav <anirudha@amazon.com>
Signed-off-by: Anirudha Jadhav <anirudha@amazon.com>
…hlight

Mouse clicks no longer leave a persistent blue background on selected tabs.
The focus background now only appears during keyboard navigation.

Signed-off-by: Anirudha Jadhav <anirudha@amazon.com>
- Add Principles section (About OUI, Design Philosophy)
- Add Foundations section (Color, Typography, Spacing, Elevation, Icons)
- Register new pages in routes.js navigation
- Add sidebar divider with gradient fade at top/bottom edges
- Hide sidebar scrollbar with bottom fade-out mask for overflow hint
- Preserve sidebar scroll position on page navigation
- Add top padding to page body for header spacing
- Use scrollIntoView nearest for sidebar nav scroll behavior
- Add .kiro specs for v9-design-system-docs and v9-scaffolding-colors
- Dense button sizing: Default 48→32px, Small 40→24px, XSmall removed
- Flat shadcn-inspired button styling with neutral borders and no shadows on fill
- Snappy 50ms hover transitions for instant feedback
- Tighter border radii (8→6, 6→4, 12→10)
- Observability-optimized visualization palette (Vis0-15)
- Dark theme code block colors updated to match
- Removed extra-small button examples from docs

Signed-off-by: anirudha <anirudha@users.noreply.github.com>
@anirudha anirudha changed the title feat(v9): dense flat buttons, observability colors, remove XS size PR9: feat(v9): dense flat buttons, observability colors, remove XS size Feb 13, 2026
…ocs trigger

Signed-off-by: anirudha <anirudha@users.noreply.github.com>
@anirudha anirudha force-pushed the v9-theme-colors-buttons branch from a0099ed to 994296f Compare February 14, 2026 18:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants