Workspace Views
Learn how to create workspace views that provide tab-based content areas for organizing different aspects of entity editing.
Workspace Views provide tab-based content areas within workspaces, allowing you to organize different aspects of entity editing into focused interfaces. They appear as tabs alongside the default content editing interface.
Purpose
Workspace Views provide:
Tab-based organization for different editing aspects
Contextual interfaces related to the current entity
Workspace integration with access to workspace contexts
Custom functionality specific to entity types
Manifest
Key Properties
weight- Tab ordering (higher weight appears first)meta.label- Text displayed on the tabmeta.pathname- URL segment for the viewmeta.icon- Icon displayed on the tabconditions- Determines workspace availability
Implementation
Implement your workspace view as a Lit element that extends UmbElementMixin. This creates a tab-based interface that users can navigate to within the workspace:
View Lifecycle
Initialization
Views initialize when their tab becomes active
Context consumption happens during construction
Views have access to workspace-scoped contexts
Tab Navigation
Views are lazy-loaded when first accessed
Navigation updates the workspace URL with view pathname
Views remain in memory while the workspace is open
Context Integration
Views can consume multiple workspace contexts:
Common Patterns
Entity Information View
Interactive Configuration View
Analytics Dashboard View
Best Practices
View Organization
Use descriptive tab labels that indicate the view's purpose
Order views by importance using the
weightpropertyGroup related functionality into a single view rather than many small tabs
Context Usage
Consume contexts in the constructor for immediate availability
Use
observe()for reactive updates when context state changesCheck context availability before accessing properties
Performance
Keep views lightweight for fast tab switching
Load expensive data only when view becomes active
Use loading states for async operations
Conditional Availability
Only show views when relevant:
Last updated
Was this helpful?