mcpField
S
syncfusion-javascript-appbar

syncfusion-javascript-appbar

github.com/syncfusionDesign & UI055 installsUpdated 6d ago
Repository

About syncfusion-javascript-appbar

syncfusion-javascript-appbar is a TypeScript skill for building navigation headers with Syncfusion AppBar. It covers positioning, sizing, themes, responsive layouts, component integration, and accessibility.

Key features

  1. 01Top, bottom, and sticky positioning
  2. 02Regular, Prominent, and Dense modes
  3. 03Light, Dark, Primary, and Inherit themes
  4. 04Buttons, menus, and sidebar integration
  5. 05Responsive and accessible layouts

Use cases

  1. 01Build a responsive application header
  2. 02Create a dashboard bar with page actions
  3. 03Add bottom navigation for mobile layouts
  4. 04Group editor actions in a toolbar

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/syncfusion/javascript-ui-controls-skills --skill syncfusion-javascript-appbar

After installing, type/syncfusion-javascript-appbarin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
api-reference.md
best-practices-and-accessibility.md
color-and-theme-modes.md
getting-started.md
layout-patterns-and-design.md
positioning-and-sticky.md
size-and-height-modes.md
styling-customization.md

Details

From the project README

Implementing AppBar in Syncfusion TypeScript

When to Use This Skill

Use this skill when you need to:

  • Create a responsive application header or navigation bar
  • Display branding, screen titles, or navigation actions
  • Build app bars with buttons, menus, or custom content
  • Position bars at top, bottom, or as sticky elements
  • Apply color modes (Light, Dark, Primary, Inherit)
  • Customize sizing (Regular, Prominent, Dense)
  • Style and theme your AppBar
  • Integrate complex layouts with spacers, separators, and components
  • Ensure responsive design for different screen sizes
  • Implement accessibility features

AppBar Overview

The AppBar (also known as action bar or nav bar) is a Syncfusion navigation component that displays information and actions related to the current application screen. It provides:

  • Flexible positioning: Top (default), Bottom, or Sticky
  • Multiple sizing modes: Regular, Prominent, Dense
  • Color themes: Light, Dark, Primary, Inherit
  • Component integration: Buttons, DropDownButtons, Menus, Sidebars
  • Layout elements: Spacers for content distribution, Separators for grouping
  • Responsive design: Automatic adaptation for mobile and desktop
  • Accessibility support: ARIA attributes, keyboard navigation, semantic HTML
  • Customization: CSS classes, custom themes, HtmlAttributes
Key Dependencies
@syncfusion/ej2-navigations  // AppBar component
@syncfusion/ej2-base         // Base utilities
@syncfusion/ej2-buttons      // Button integration
@syncfusion/ej2-splitbuttons // DropDownButton support

Documentation and Navigation Guide

Getting Started

📄 Read: references/getting-started.md

  • Installation and npm package setup
  • TypeScript and ES5 JavaScript approaches
  • Basic AppBar initialization
  • CSS imports and theme configuration
  • Adding buttons and content
  • First render and CDN references
Positioning and Sticky Behavior

📄 Read: references/positioning-and-sticky.md

  • Top AppBar (default positioning)
  • Bottom AppBar positioning
  • Sticky AppBar behavior (isSticky property)
  • Use cases for each position
  • Positioning property configuration
  • ScrollView interaction
Size and Height Modes

📄 Read: references/size-and-height-modes.md

  • Regular AppBar (default height)
  • Prominent AppBar (larger height for titles/images)
  • Dense AppBar (compact height)
  • Height customization techniques
  • When to use each mode
  • CSS class application
Color and Theme Modes

📄 Read: references/color-and-theme-modes.md

  • Light AppBar (light background and text)
  • Dark AppBar (dark background and text)
  • Primary AppBar (primary brand colors)
  • Inherit AppBar (inherit parent colors)
  • Button inheritance with e-inherit CSS class
  • Component integration (Buttons, Menu, DropDownButton)
Styling and Customization

📄 Read: references/styling-customization.md

  • CSS class selectors and purposes
  • CssClass property for custom styling
  • HtmlAttributes for ARIA labels and accessibility
  • Custom theme creation
  • Theme Studio integration
  • CSS variable customization
Layout Patterns and Design

📄 Read: references/layout-patterns-and-design.md

  • Spacer element (e-appbar-spacer) for content distribution
  • Separator element (e-appbar-separator) for visual grouping
  • Button and DropDownButton integration patterns
  • Menu component integration
  • Sidebar with TreeView integration
  • Responsive design and media queries
  • Complex navigation layouts
Best Practices and Accessibility

📄 Read: references/best-practices-and-accessibility.md

  • Semantic HTML structure
  • ARIA attributes and accessibility
  • Keyboard navigation support
  • Color contrast and accessibility compliance
  • Responsive breakpoints for mobile
  • Performance optimization
  • Common pitfalls and troubleshooting
API Reference

📄 Read: references/api-reference.md

  • Complete API documentation for all properties, methods, and events
  • All 9 properties with type definitions (colorMode, cssClass, enablePersistence, enableRtl, htmlAttributes, isSticky, locale, mode, position)
  • All 8 methods with parameters and return types (addEventListener, appendTo, dataBind, destroy, getRootElement, refresh, removeEventListener, inject)
  • All 2 events with detailed examples (created, destroyed)
  • State persistence across page reloads (enablePersistence)
  • Internationalization and RTL support (locale, enableRtl)
  • Event handling patterns and lifecycle management
  • Complete working examples for all APIs

Quick Start Example

Basic AppBar Setup

TypeScript:

import { AppBar } from "@syncfusion/ej2-navigations";
import { Button } from "@syncfusion/ej2-buttons";

// Create AppBar with Primary color
const appbarObj: AppBar = new AppBar({
  colorMode: 'Primary'
});
appbarObj.appendTo("#appbar");

// Add buttons with inherited styling
const menuButton: Button = new Button({ 
  cssClass: 'e-inherit', 
  iconCss: 'e-icons e-menu' 
});
menuButton.appendTo('#menuBtn');

const loginButton: Button = new Button({ 
  cssClass: 'e-inherit', 
  content: 'Login' 
});
loginButton.appendTo('#loginBtn');

HTML:

<!DOCTYPE html>
<html>
<head>
  <link href="url" rel="stylesheet" />
  <link href="url" rel="stylesheet" />
  <link href="url" rel="stylesheet" />
</head>
<body>
  <header id="appbar">
    <button id="menuBtn"></button>
    <div class="e-appbar-spacer"></div>
    <button id="loginBtn"></button>
  </header>
</body>
</html>

Common Patterns

Pattern 1: Navigation with Spacer
// Center title with left menu and right login
<header id="appbar">
  <button id="menu"></button>
  <span>My App</span>
  <div class="e-appbar-spacer"></div>
  <button id="login"></button>
</header>
Pattern 2: Grouped Actions with Separator
// Edit actions | Format actions | Layout actions
<header id="appbar">
  <button id="cut"></button>
  <button id="copy"></button>
  <button id="paste"></button>
  <div class="e-appbar-separator"></div>
  <button id="bold"></button>
  <button id="italic"></button>
</header>
Pattern 3: Prominent Header with Background

Use mode: 'Prominent' with background image for hero headers.

Pattern 4: Sticky Navigation

Set isSticky: true for persistent header during scroll.

Pattern 5: Bottom Navigation Bar

Set position: 'Bottom' for mobile-style bottom navigation.

Key Properties Reference

PropertyTypeDefaultPurpose
colorMode'Light' | 'Dark' | 'Primary' | 'Inherit''Light'Sets background and text colors
mode'Regular' | 'Prominent' | 'Dense''Regular'Controls AppBar height
position'Top' | 'Bottom''Top'Positions AppBar at top or bottom
isStickybooleanfalseMakes AppBar stick during scroll
cssClassstring''Applies custom CSS classes
htmlAttributesobject{}Sets HTML attributes (ARIA, etc.)

Common Use Cases

Use Case 1: E-Commerce Header

// Logo, navigation menu, search, cart, profile
// Sticky, Primary color, responsive layout with e-appbar-spacer

Use Case 2: SPA Dashboard

// Menu toggle, page title, notification icon, user dropdown
// Top positioned, Prominent mode for title

Use Case 3: Mobile App Navigation

// Bottom navigation bar with icons
// Dense mode, Bottom position, Light/Dark color mode

Use Case 4: Document Editor

// Grouped editing tools with separators
// Regular mode, Primary color, e-inherit buttons for consistency

Use Case 5: Complex Dashboard with Sidebar

// Menu toggle + AppBar at top + Sidebar below
// Sticky AppBar, responsive media queries

Next Steps

  1. Get Started: Read Getting Started to set up your first AppBar
  2. Position Your Bar: Choose position with Positioning Guide
  3. Select Size Mode: Pick size with Size Modes
  4. Apply Colors: Set theme with Color Modes
  5. Style & Customize: Customize look with Styling
  6. Design Layout: Create complex patterns with Layout Patterns
  7. Ensure Quality: Follow Best Practices

Control: Syncfusion AppBar | Platform: TypeScript | Version: EJ2 32.1.19+

Comments

Markdown supported