
syncfusion-react-ribbon
Implement the Syncfusion React Ribbon component. Use this skill for creating Ribbon UIs with tabs, groups, items, Classic or Simplified layouts, file menu and backstage view, contextual tabs, galleries, KeyTips, accessibility, theming, responsive behavior, customization, and troubleshooting in React.
- Installs
- 701
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/syncfusion/react-ui-components-skills --skill syncfusion-react-ribbon- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads syncfusion-react-ribbon automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Syncfusion React Ribbon
Component Overview
The Syncfusion React Ribbon component is a professional, feature-rich toolbar designed for creating command-centric user interfaces inspired by Microsoft Office. It provides an intuitive hierarchical structure that organizes related commands into visually distinct tabs and groups, enabling users to quickly discover and execute actions.
Key Capabilities
- Tabbed Ribbon Interface: Organize commands into logical tabs for easy navigation and grouping
- Dual Layout Modes: Support for Classic (multi-row) and Simplified (single-row) layouts with dynamic switching
- Multiple Item Types: Buttons, checkboxes, dropdowns, split buttons, combo boxes, color pickers, group buttons, galleries, and custom templates
- Responsive Resizing: Automatically adjust item sizes (Large, Medium, Small) based on available space
- File Menu & Backstage View: Complete file menu with traditional File menu or modern backstage interface
- Contextual Tabs: Show/hide tabs dynamically based on user selection or application state
- Gallery Support: Visual selection galleries with grouping, filtering, and custom item templates
- KeyTips & Keyboard Navigation: Accessibility-first keyboard navigation with KeyTip support
- Group Overflow Management: Control group priority and dedicated overflow popups for better space utilization
- Rich Customization: Custom CSS classes, item templates, icons, and layout control
- Comprehensive Event Handling: itemClick, tabSelected, fileMenuSelect, and more for precise control
- Multi-Theme Support: Material, Bootstrap, Fluent, and Tailwind CSS themes with dark mode
- RTL & Accessibility: Full right-to-left language support and WCAG compliance with ARIA attributes
- Help Pane Integration: Built-in help pane for contextual assistance and documentation
Hierarchical Structure:
- Ribbon (root container) - Main toolbar component
- Tabs (e.g., Home, Insert, View, Design) - Logical command groupings
- Groups (e.g., Clipboard, Font, Styles) - Related command categories
- Collections (logical item containers) - Item arrangement helpers
- Items (buttons, dropdowns, galleries, color pickers, etc.) - Individual commands and controls
- Collections (logical item containers) - Item arrangement helpers
- Groups (e.g., Clipboard, Font, Styles) - Related command categories
- Tabs (e.g., Home, Insert, View, Design) - Logical command groupings
Documentation
Getting Started
📄 Read: references/getting-started.md
- Installation and package setup
- Basic ribbon component implementation
- CSS imports and themes
- First working example
- TypeScript configuration
Ribbon Structure
📄 Read: references/ribbon-structure.md
- Tabs creation and configuration
- Groups organization and hierarchy
- Collections and item containers
- Tab header properties
- Group headers and icons
- Item size and orientation
Items and Groups
📄 Read: references/items-and-groups.md
- Built-in item types (Button, CheckBox, DropDown, SplitButton, ComboBox, ColorPicker, GroupButton, Template)
- Item properties and icons
- Item sizes (Large, Medium, Small) and active size control
- Item CSS customization with custom classes
- Item tooltips with RibbonTooltipSettings
- Item templates for custom rendering
- Disabled state and display options
- Group orientation (Row vs Column)
- Group overflow behavior and priority
Tabs and Groups Configuration
📄 Read: references/tabs-and-groups.md
- Adding and managing tabs
- Tab-level configuration and CSS customization
- Tab styling with custom classes and themes
- Group properties and organization
- Group headers and icons
- Group collapsibility and launcher icons
- Dynamic tab/group management
Layouts and Display Modes
📄 Read: references/layouts-display-modes.md
- Classic layout (traditional multi-row format)
- Simplified layout (single-row compact format)
- Layout switching and the layout switcher button
- Display options for items (Auto, Classic, Simplified, Overflow)
- Responsive resizing behavior
- Item size adaptation during resizing
- Minimized state (ribbon collapse)
File Menu and Backstage
📄 Read: references/file-menu-backstage.md
- File menu configuration and visibility
- File menu item templates for custom rendering
- File menu popup templates
- File menu animation settings
- File menu tooltip configuration
- Complete event handling (beforeOpen, open, beforeClose, close, beforeItemRender, select)
- Backstage view implementation
- Backstage items configuration with advanced options
- Backstage dimensions (width, height) and positioning
- Backstage KeyTip integration
- Backstage tooltip settings
- Footer items and separators
- Back button customization
- Custom backstage templates
- Navigation within backstage
Contextual Tabs and Gallery
📄 Read: references/contextual-tabs-gallery.md
- Creating contextual tabs
- Controlling contextual tab visibility
- Showing/hiding contextual tabs programmatically
- Gallery item configuration
- Gallery groups and items
- Gallery item templates
- Gallery filtering and selection
- Popup width and height
Events and Accessibility
📄 Read: references/events-accessibility.md
- Ribbon events (itemClick, tabSelected, etc.)
- Event handling and callbacks
- Keyboard shortcuts with KeyTips
- KeyTip configuration
- Accessibility compliance (WCAG)
- ARIA attributes
- Screen reader support
- RTL support
- Focus management
- Keyboard navigation
Customization and Theming
📄 Read: references/customization-theming.md
- Available built-in themes (Material, Bootstrap, Fluent, Tailwind)
- Importing and applying themes
- CSS customization
- Custom icon fonts
- Theme Studio integration
- Dark mode support
- Responsive design considerations
- Custom CSS classes
Tooltips and Help Pane
📄 Read: references/tooltips-help-pane.md
- Tooltip implementation for items
- Custom tooltip templates
- Help pane configuration
- Help pane templates and content
- Contextual help integration
Troubleshooting
📄 Read: references/troubleshooting.md
- Common issues and solutions
- Performance optimization tips
- Styling and display issues
- Event handling problems
- Module injection troubleshooting
- Responsive behavior issues
Quick Start
Basic Ribbon with Tabs and Groups
import { RibbonComponent, RibbonTabsDirective, RibbonTabDirective, RibbonGroupsDirective, RibbonGroupDirective, RibbonCollectionsDirective, RibbonCollectionDirective, RibbonItemsDirective, RibbonItemDirective } from "@syncfusion/ej2-react-ribbon";
@import "@syncfusion/ej2-tailwind3-theme/styles/ribbon/index.css";
function App() {
return (
<RibbonComponent id="ribbon">
<RibbonTabsDirective>
<RibbonTabDirective header="Home">
<RibbonGroupsDirective>
<RibbonGroupDirective header="Clipboard">
<RibbonCollectionsDirective>
<RibbonCollectionDirective>
<RibbonItemsDirective>
<RibbonItemDirective type="Button" buttonSettings={{ iconCss: "e-icons e-cut", content: "Cut" }}>
</RibbonItemDirective>
<RibbonItemDirective type="Button" buttonSettings={{ iconCss: "e-icons e-copy", content: "Copy" }}>
</RibbonItemDirective>
<RibbonItemDirective type="Button" buttonSettings={{ iconCss: "e-icons e-paste", content: "Paste" }}>
</RibbonItemDirective>
</RibbonItemsDirective>
</RibbonCollectionDirective>
</RibbonCollectionsDirective>
</RibbonGroupDirective>
</RibbonGroupsDirective>
</RibbonTabDirective>
</RibbonTabsDirective>
</RibbonComponent>
);
}
export default App;
Ribbon with File Menu
import { RibbonComponent, RibbonTabsDirective, RibbonTabDirective, RibbonGroupsDirective, RibbonGroupDirective, RibbonCollectionsDirective, RibbonCollectionDirective, RibbonItemsDirective, RibbonItemDirective, RibbonFileMenu, Inject } from "@syncfusion/ej2-react-ribbon";
import { MenuItemModel } from '@syncfusion/ej2-navigations';
function App() {
const fileOptions: MenuItemModel[] = [
{ text: "New", iconCss: "e-icons e-file-new", id: "new" },
{ text: "Open", iconCss: "e-icons e-folder-open", id: "open" },
{ text: "Save", iconCss: "e-icons e-save", id: "save" },
{ text: "Save as", iconCss: "e-icons e-save", id: "saveas" }
];
return (
<RibbonComponent id="ribbon" fileMenu={{ visible: true, menuItems: fileOptions }}>
<RibbonTabsDirective>
<RibbonTabDirective header="Home">
<RibbonGroupsDirective>
<RibbonGroupDirective header="Clipboard">
<RibbonCollectionsDirective>
<RibbonCollectionDirective>
<RibbonItemsDirective>
<RibbonItemDirective type="Button" buttonSettings={{ iconCss: "e-icons e-cut", content: "Cut" }}>
</RibbonItemDirective>
</RibbonItemsDirective>
</RibbonCollectionDirective>
</RibbonCollectionsDirective>
</RibbonGroupDirective>
</RibbonGroupsDirective>
</RibbonTabDirective>
</RibbonTabsDirective>
<Inject services={[RibbonFileMenu]} />
</RibbonComponent>
);
}
export default App;
Common Patterns
Pattern 1: Multi-Tab Ribbon with Multiple Item Types
Structure a professional ribbon with multiple tabs containing different item types (buttons, dropdowns, combos).
Pattern 2: Responsive Ribbon with Classic and Simplified Layouts
Create a ribbon that switches between Classic (multi-row) and Simplified (single-row) layouts based on screen size or user preference.
Pattern 3: Context-Aware Ribbon
Show/hide contextual tabs dynamically when users select specific objects or content types.
Pattern 4: File Menu with Backstage View
Combine file menu with backstage for comprehensive document management and application settings.
Pattern 5: Gallery-Based Item Selection
Use galleries to provide visual selection of styles, templates, or formatting options.
Key Props and Features
RibbonComponent:
fileMenu- Configure file menu visibility and itemsbackStageMenu- Enable and configure backstage viewactiveLayout- Set layout mode (Classic, Simplified)isMinimized- Programmatically minimize/expand ribbonhideLayoutSwitcher- Hide the layout switcher button
RibbonTabDirective:
header- Tab title textcssClass- Custom CSS classes for tab styling
RibbonGroupDirective:
header- Group titleorientation- Item alignment (Row, Column)groupIconCss- Custom icon for group overflowshowLauncherIcon- Show launcher iconenableGroupOverflow- Dedicated overflow popup for groupisCollapsible- Allow group to collapse on resizepriority- Collapse/expand priority
RibbonItemDirective:
type- Item type (Button, CheckBox, DropDown, SplitButton, ComboBox, ColorPicker, GroupButton, Gallery, Template)allowedSizes- Permitted item sizes (Large, Medium, Small)activeSize- Current display size of the itemcssClass- Custom CSS classes for item stylingribbonTooltipSettings- Tooltip configuration with title and contentitemTemplate- Custom template for item renderingdisplayOptions- Visibility in layouts (Auto, Classic, Simplified, Overflow)disabled- Enable/disable item- Settings objects:
buttonSettings,dropDownSettings,splitButtonSettings, etc.
For complete examples and advanced scenarios, explore individual reference files above.
FAQ
What does the syncfusion-react-ribbon skill do?
Implement the Syncfusion React Ribbon component. Use this skill for creating Ribbon UIs with tabs, groups, items, Classic or Simplified layouts, file menu and backstage view, contextual tabs, galleries, KeyTips, accessibility, theming, responsive behavior, customization, and troubleshooting in React.
How do I install syncfusion-react-ribbon?
Run npx skills add https://github.com/syncfusion/react-ui-components-skills --skill syncfusion-react-ribbon in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/syncfusion-react-ribbon/ (personal) or .claude/skills/syncfusion-react-ribbon/ (project).
Which AI agents can use syncfusion-react-ribbon?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is syncfusion-react-ribbon safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains syncfusion-react-ribbon?
It is published by syncfusion in syncfusion/react-ui-components-skills. It has 701 recorded installs.
More from syncfusion/react-ui-components-skills
syncfusion-react-grid
syncfusion/react-ui-components-skills
Implements Syncfusion React Grid component for feature-rich data tables and grids. Use this when working with data display, sorting, filtering, grouping, aggregates, editing, or exporting. This skill covers grid configuration, CRUD operations, virtual scrolling or infinite scrolling, hierarchy grids, state persistence, and advanced data management features for data-intensive applications.
syncfusion-react-scheduler
syncfusion/react-ui-components-skills
Implement Syncfusion React Scheduler component for calendar, event scheduling, and appointment management. Use this when building scheduling systems, calendar applications, booking systems, or time management interfaces. Covers all scheduler views (Day, Week, Month, Timeline, Agenda, Year), data binding, resource scheduling, recurring events, CRUD operations, drag-and-drop scheduling, customization, accessibility, and advanced features.
syncfusion-react-gantt-chart
syncfusion/react-ui-components-skills
Implement, configure, and customize the Syncfusion React Gantt Chart component. Use this when building project scheduling applications with task timelines, dependencies, resource management, and calendar-driven scheduling. Covers GanttComponent setup, task constraints, taskbar customization, filtering, sorting, Excel/PDF export, critical path analysis, milestones, predecessors, resource view, baseline tracking, and task calendar configuration.
syncfusion-react-rich-text-editor
syncfusion/react-ui-components-skills
Implements the Syncfusion React Rich Text Editor (RichTextEditorComponent) from ej2-react-richtexteditor, supporting HTML (WYSIWYG) and Markdown editing. Use this skill for toolbar configuration, image/video/audio insertion, paste cleanup, AI assistant integration, emoji picker, slash menu, mentions, import/export Word/PDF, form validation, and source code view in React applications.
syncfusion-react-charts
syncfusion/react-ui-components-skills
Implement Syncfusion React Charts component for data visualization. Use this when creating charts, configuring axes and series, or customizing visualization styles. This skill covers chart types, data binding, user interactions, financial indicators, accessibility features, and professional data visualization in React applications.
syncfusion-react-treegrid
syncfusion/react-ui-components-skills
Implements Syncfusion React TreeGrid for hierarchical data with sorting, filtering, editing, exporting, paging, virtual scrolling, and advanced features. Supports configuration, CRUD, aggregates, templates, state persistence, and performance optimization in React applications.
Popular frontend & design skills
setup-matt-pocock-skills
mattpocock/skills
Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.
frontend-design
anthropics/skills
Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.
hyperframes-animation
heygen-com/hyperframes
All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.
prototype
mattpocock/skills
Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.
hyperframes-core
heygen-com/hyperframes
The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.
vercel-react-best-practices
vercel-labs/agent-skills
React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.