Skip to Content
DocsWorkspacesOverview

Overview

Workspaces are O3’s side-panel interaction model for data entry, ordering, form filling, and other focused tasks. On desktop, workspace windows open on the side of the screen. On tablet and phone layouts, they render as an overlay.

Workspace v2 uses a three-level model:

  • Workspace group - The top-level container for a related workflow. A group can own an action menu, define where it persists with scopePattern, and choose whether it renders as an overlay.
  • Workspace window - A panel inside a group. Windows define width, maximize behavior, display order, and optionally an action menu icon.
  • Workspace - The React component that renders the actual task UI inside a window. A window can hold a stack of workspaces, which is how parent and child workspace flows are represented.

A workspace component is registered in routes.json under workspaces2. Each workspace points to a workspaceWindows2 entry, and each window points to a workspaceGroups2 entry. Apps can either define their own group or attach windows to an existing group such as patient-chart or ward-patient.

Workspace components should render <Workspace2> as their top-level container. Launch workspaces with launchWorkspace2, or use patient helpers such as useLaunchWorkspaceRequiringVisit when a workflow requires an active visit.

The older v1 APIs (workspaces, launchWorkspace, ActionMenuButton, workspace type, canHide, and promptBeforeClosing) are deprecated. See Migrating to Workspace v2 when updating older code.

Last updated on