The bar & the island
The page integration is one object in three folds. It hangs off an edge of your page the way a notch does, and everything your people need is inside it.

The bar#
Folded, a slab flush with the edge: your space's name, how many are here, how many huddles are open, and the person's own name. In a huddle it keeps the title and a dot that pulses while somebody is talking; notices flash through it. People drag it to any corner, top or bottom, and it remembers per site.
The island#
Press the bar and it unfolds into the huddle experience at notch size — the same app dressed for the room. Idle: the faces of everyone around and every open huddle as a chip; tap a face and you are talking. In a huddle: faces with an eq badge on whoever is speaking, camera tiles when a camera is on, reactions rising off the strip, a chat pane with a composer, mute, react, and leave. A ⋯ menu names the bigger things — whiteboard, document, go live — and choosing one grows the frame with the surface already open.
The panel#
The whole product — the field, boards, documents, going live — reached only by the person's press on ⤢, never by default. The same iframe grows, so nothing reconnects and nobody drops out of the conversation to get there.

popOut: false and the island is the room.One iframe, never destroyed#
The session, the socket and — mid-huddle — the microphone live in the iframe, so folding the widget hides it and never removes it. A huddle starting while the widget is collapsed unfolds the island: the person just tapped a face, and hiding the conversation they started would be wrong.
Your page can listen for nothing and send nothing. State flows from the iframe to the bar; the only inputs are the person’s own presses. The widget API exists for the cases where you want to open it, move it or hand it a thread.
huddles.space · Blog · For Mac · Premium · Terms · Privacy · © 2026 Huddles.Space