PluginBench
Skill
Review
Audit score 70

use-topbar

cognitedata/builder-skills

Wire Aura Topbar into Flows/Fusion apps as the compliant single top navigation bar with breadcrumbs, theme switching, and utility strip.

What is use-topbar?

Aura Topbar is the standardized top navigation component for authenticated Flows/Fusion applications. Use it when building or scaffolding a new Flows/Fusion app, adding a header, breadcrumbs, or theme switcher. It provides breadcrumb navigation, optional center tabs or segmented controls, and a right utility strip (Share, notifications, theme menu, Atlas, user Avatar).

  • Installs @aura/topbar as a shadcn registry component via the shadcn CLI
  • Provides breadcrumb navigation with interactive links for app and object hierarchy
  • Supports optional center Tabs or Segmented control for secondary navigation
  • Includes right utility strip with Share, Notifications, Theme switcher, Atlas, and user Avatar
  • Wires light/dark theme switching to document.documentElement with sun/moon icons
  • Enforces single Topbar per page and composition from @aura/topbar primitives only

How to install use-topbar

npx skills add https://github.com/cognitedata/builder-skills --skill use-topbar
Prerequisites
  • Flows or Fusion application project
  • pnpm package manager
  • shadcn CLI installed and configured
  • Existing dark-mode hook or context (optional; can be created during setup)
Claude Code
Cursor
Windsurf
Cline

How to use use-topbar

  1. 1.Set up the Cursor hooks by creating or merging .cursor/hooks.json with the topbar sessionStart prompt
  2. 2.Read package.json, src/App.tsx (or main layout), and app config to infer defaults
  3. 3.Run the full Q1–Q9 configuration interview from INTERVIEW.md, asking one question at a time
  4. 4.Install @aura/topbar via shadcn CLI: pnpm dlx shadcn@latest add @aura/topbar
  5. 5.Wire the useThemeMode hook for light/dark theme switching to document.documentElement
  6. 6.Compose the Topbar component with breadcrumbs, optional center Tabs/Segmented control, and right utility strip in the correct order (Share → Notifications → Theme → Atlas → Avatar)
  7. 7.Verify compliance: exactly one Topbar per page, breadcrumbs are interactive links, primary actions live below the Topbar, theme menu shows sun/moon with Light/Dark rows and checkmark

Use cases

Good for
  • Adding a compliant header and navigation bar to a new Flows/Fusion application
  • Implementing breadcrumb navigation that reflects app structure and open objects
  • Adding theme switching (light/dark mode) to an authenticated Flows/Fusion app
  • Scaffolding a Flows/Fusion app with standard top navigation and utility controls
  • Replacing a custom header with the standardized Aura Topbar component
Who it's for
  • Flows/Fusion application developers
  • Frontend engineers building authenticated Cognite applications
  • Teams scaffolding new Flows/Fusion projects
  • Developers implementing app headers and navigation bars

use-topbar FAQ

Can I build a custom header fallback if shadcn installation fails?

No. If installation fails, surface the blocker to the user — never build a custom header fallback. See RULES.md §1, §11, §12.

Can I have multiple Topbars on one page?

No. Exactly one Topbar per page is non-negotiable. The Topbar must be composed only from @aura/topbar primitives.

Where should primary app actions go?

Primary and app-specific actions must live in the content area below the Topbar, not in the Topbar itself.

What is the correct order for the right utility strip?

Share → Notifications → Theme → Atlas → user Avatar. Share, Notifications, and Theme are ghost small buttons; Atlas is secondary small with a leading icon.

How do I set up theme switching?

Wire the useThemeMode hook to toggle light/dark mode on document.documentElement. The theme button shows a sun icon in light mode and moon icon in dark mode, with a menu offering Light/Dark options and a checkmark on the active mode.

Full instructions (SKILL.md)

Source of truth, from cognitedata/builder-skills.


name: use-topbar description: >- Wires the Aura Topbar (@aura/topbar) into Flows/Fusion apps as the single top navigation bar — breadcrumbs, optional center Tabs or Segmented control, right utility strip (Share, notifications, theme menu, Atlas, user Avatar), and light/dark theme switching. Use when adding a topbar, app header, navigation bar, breadcrumbs, or theme switcher to a Flows or Fusion app, or when scaffolding a new Flows/Fusion application. allowed-tools: Read, Glob, Grep, Write, Edit, Bash

Topbar

@aura/topbar is the single, compliant top navigation bar for every authenticated Flows/Fusion app. It is a shadcn registry component (installed via pnpm dlx shadcn@latest add @aura/topbar), not an npm package.

Non-negotiables: Exactly one Topbar per page, composed only from @aura/topbar primitives, installed via the shadcn CLI only. If installation fails, surface the blocker — never build a custom header fallback. See RULES.md §1, §11, §12.


Step 0 — Auto-prompt hook setup

Ensure the topbar interview is triggered at the start of every future Cursor session in this project.

  1. Check whether .cursor/hooks.json exists in the project root.
  2. If it does not exist, create it:
{
  "version": 1,
  "hooks": {
    "sessionStart": [
      {
        "type": "prompt",
        "prompt": "This is a Flows/Fusion application. Before implementing any UI or navigation work, read and follow the topbar skill and run the topbar configuration interview with the user."
      }
    ]
  }
}
  1. If .cursor/hooks.json already exists without a topbar sessionStart entry, merge the entry above — do not overwrite unrelated hooks.
  2. Confirm to the user, then continue.

Step 1 — Pre-flight: read the app

Before asking any questions, read:

  • package.json — package manager, existing UI deps, existing @aura/topbar
  • src/App.tsx (or main layout file) — routing, existing dark-mode hook/context
  • Flows/Fusion app config (app.config.ts, fusion.config.ts, manifest) — displayName, name, app mark / branding

Apply any found defaults and skip the corresponding interview questions. State what was inferred.


Step 2 — Configuration interview (mandatory)

Run the full Q1–Q9 interview in INTERVIEW.md before writing any implementation code. Ask one question at a time; skip only questions that Step 1 already answered definitively.


Steps 3–5 — Install, theme hook, implement

See IMPLEMENTATION.md for:

  • Installing @aura/topbar via the shadcn CLI (mandatory, no workarounds)
  • useThemeMode hook wiring for light/dark switching
  • Topbar component composition example and layout wrapper

Step 6 — Compliance checklist

Verify before finishing (see RULES.md §12 for the full enforcement checklist):

  • Exactly one Topbar per page
  • Left: Avatar application mark (small, fjord) → app name breadcrumb → object name breadcrumb (only when an object is open)
  • Breadcrumb segments are interactive links — not static text
  • Object dropdown (if present) only on the object name segment; actions are object-scoped only
  • Inline metadata (if present) is a plain string, left-aligned after the breadcrumb — not centered
  • Middle: Tabs or Segmented control at small if present; no sidebar; no primary CTA in the Topbar
  • Primary / app-specific actions live in the content area below the Topbar
  • Right strip order when used: Share → Notifications → Theme → Atlas → user Avatar; Share/Notifications/Theme as ghost small, Atlas as secondary small with leading icon + "Atlas"
  • Theme: sun in light mode, moon in dark mode; Menu with Light/Dark rows + checkmark on active; wired to document.documentElement
  • tailwind.config has darkMode: 'class'

Related skills

More from cognitedata/builder-skills and the wider catalog.