Breadcrumbs
Breadcrumbs are a common, application‑wide navigation component that display a user’s current location within the product hierarchy and provide direct navigation to ancestor pages.
1. Purpose
- Indicate the user’s current location within the application’s hierarchical structure (from Home to the current page).
- Provide quick, predictable navigation back to any ancestor level.
- Reflect the canonical information architecture, not the user’s click path (e.g., deep links, bookmarks, external entry still show the same structural path).
2. Scope
- Applies to all authenticated application views that are part of the main product hierarchy.
- Excludes the homepage (breadcrumbs are not rendered there).
- Implemented as a shared, reusable UI component used across all modules.
3. Placement and Visibility
- Rendered on all pages except the homepage.
- Positioning:
- Immediately below the main navigation bar.
- Immediately above page title and primary page content.
- Top‑level pages (one level below Home) display:
Home > Current Page.
- The first item is always “Home” and navigates to the main dashboard/homepage.
4. Structure and Content
4.1 Visual Structure
- Default pattern:
Home > Section > Subsection > Current Page.
- Separator:
- A single, consistent visual separator (e.g.,
>or/) with spacing on both sides. - Separators are not part of the clickable area.
- A single, consistent visual separator (e.g.,
4.2 Items and Links
- All items except the last are rendered as links.
- The final item:
- Represents the current page.
- Is rendered as non‑interactive text (no link).
4.3 Label Rules
- Breadcrumb labels must:
- Match the corresponding page titles or primary navigation labels for consistency.
- Be concise but sufficiently descriptive to be meaningful in isolation.
- Record detail pages:
- The final breadcrumb item uses the record’s primary identifier (e.g., ID, reference number, or name).
- Examples:
Home > Cash Receipts > CR-2024-12345Home > Deals > Q4 Enterprise Deal
4.4 Hierarchy Semantics
- Breadcrumbs must always represent the canonical structural hierarchy of the application (information architecture).
- The breadcrumb path must not:
- Change based on the user’s navigation history.
- Reflect workflow order, wizard steps, or arbitrary click path.
- If a record belongs to a parent entity, the breadcrumb must include that context (e.g., a Transaction under a specific Billing Item includes the Billing Item in the path).
5. Interaction Behavior
5.1 Link Navigation
- Clicking a breadcrumb link navigates directly to that level’s standard page.
- When navigating via breadcrumb:
- The target page loads in its default state.
- Filters, sort orders, search queries, or other local view state from the previous context are not preserved.
5.2 Current Page
- The current page label:
- Is non‑clickable text.
- Uses a distinct visual style (e.g., color, weight) to indicate it is not a link.
5.3 Hover and Focus
- For all clickable breadcrumb items:
- Hover:
- Display a clear visual change (e.g., underline, color change, or background highlight).
- Use
cursor: pointer.
- Focus:
- All links must be reachable via keyboard tab order.
- Focus indicators must be clearly visible and follow design guidelines.
- Hover:
5.4 Dynamic Updates
- The breadcrumb must update automatically whenever the routed view changes.
- On navigation to:
- A new page: recompute the hierarchy and labels for the new route.
- A new record detail: update the final label to the new record’s primary identifier.
6. Deep Hierarchy Handling
6.1 Truncation Rules
- Truncation is applied when the breadcrumb contains 5 or more items (including Home and Current).
- When truncation is active:
- Always visible:
Home- The immediate parent of the current page
- The current page
- All intermediate levels between Home and the parent are collapsed into a single ellipsis item.
- Always visible:
- Display pattern under truncation:
Home > ... > Parent > Current
6.2 Truncation Example
- Full path (6 levels):
Home > Level 1 > Level 2 > Level 3 > Parent > Current
- Truncated display:
Home > ... > Parent > Current
6.3 Ellipsis Interaction Model
- The ellipsis (
...) is an interactive control, not plain text. - On activation (click or key press):
- Opens a dropdown menu anchored to the ellipsis.
- The dropdown lists all hidden intermediate levels in top‑down order:
- Example items:
Level 1,Level 2,Level 3.
- Example items:
- Each dropdown item is a clickable link to its corresponding level.
- Closing the dropdown:
- When the user clicks outside the dropdown.
- When the user presses Escape.
- When the user selects a menu item (navigates away).