Mobile navigation
On a phone, WerkOS keeps its workspaces in a glass bar at the bottom of the screen, within reach of the thumb. Each tab opens a screen with the modules of that workspace.
The bar
The bar shows on the home screen, on the list of modules of each workspace and on the team pages. Inside a module such as Global Projects, the module's own bar takes its place, or none, and the back arrow in the header takes you out.
When to use it
Use the bar for the top level of WerkOS on a phone: the workspaces a recruiter moves between many times a day. From 1024 px the rail on the left does this job.
Keep actions out of the workspace bar. A module that needs one, such as Add candidate, puts it in its own bar, as the one tab with color.
Anatomy
One glass bar spans the screen above the home indicator. Each tab is an icon in a 36 px box with its label underneath.
- Bar height
- 69 px at rest, 52 px compact
- Radius
- 26 px
- Inner padding
- 6 px, 4 px above and below when compact
- Bottom offset
- 14 px plus the safe area
- Side margin
- 8 px or the safe area, whichever is larger
- Icon box
- 36 by 36 px
- Glyph
- 21 px
- Label
- 9 px, weight 500, 4 px under the icon
- Selected tab
- Full ink, glyph stroke 2
- --text
- Selected capsule
- Fills the icon box
- --nav-tab-chip
- Idle tab
- Muted ink, glyph stroke 1.75
- --text-muted
Glass
The bar is real glass: a thin fill under a heavy blur, so the color of the page comes through. A soft shadow alone sets it apart from the content, with no border and no halo on icons or labels.
Where the browser cannot blur, or when the phone asks for less transparency, the bar turns opaque.
- Fill
- Navigation glass
- --glass-fill-nav
- Blur
- 48 px, saturation 220 percent light, 210 percent dark
- --glass-blur-nav
- Shadow
- Three layered drops
- --glass-shadow-nav
- Opaque fallback
- White in light, deep blue gray in dark, no blur
Behavior
Scrolling down folds the labels away in 200 ms and the bar shrinks. The first scroll up brings them back. Lists that scroll inside the page count too.
The capsule glides to the tab you tap, and the tab presses in slightly under your finger. With reduced motion both happen at once.
The page keeps room for the tallest height of the bar, so nothing jumps when it folds. Floating buttons, such as the chat launcher, follow its live height. While you type a note, the bar steps aside so it does not cover the field.
Keyboard and screen readers
The bar is a navigation landmark named Main navigation. A tab carries aria-current only on its own screen. On a team page the capsule still shows the workspace you came from, but no tab claims to be the current page. Folded labels stay in the name of each tab.
- Tab
- Moves from one workspace to the next
- Enter
- Opens the workspace
- Touch target
- At least 44 by 44 px
- Focus
- 2 px ring inside the tab
- --focus-ring
Permitted and not permitted
Permitted
Ink and stroke weight for the selected tab
The capsule behind it is a hint, not the signal.
A module's own bar inside the module
With the back arrow as the way out.
Labels of one word
Home, Projects, Intranet, Werkbook, Finance, Network.
Not permitted
Actions in the workspace bar
The bar only takes you places.
A border or a halo on the glass
The shadow alone separates the bar from the page.