Skip to content

Rooms

Rooms are collaborative spaces where teams gather to discuss ideas, share updates, and make decisions. Each Room is a dedicated environment with its own chat, voice channels, and collection of Sparks.

Think of a Room as a virtual meeting space that persists over time. Unlike a calendar meeting that ends when the call drops, a Room stays active. Conversations, Sparks, and shared context accumulate, creating a living record of your team’s work.

Rooms appear as tiles on your canvas. Click a Room to enter it and see all the Sparks, messages, and activity inside.

Every Room includes:

  • Title: A clear name that describes the Room’s purpose
  • Description: Additional context about what the Room is for
  • Color: A visual identifier that makes the Room easy to spot on the canvas
  • Icon: A symbol that represents the Room’s theme or purpose

These elements help teams quickly identify and navigate between Rooms.

Rooms exist as tiles on your personal canvas. Each tile shows:

  • Room name and icon
  • Color coding
  • Activity indicators (new messages, active participants)
  • Quick access to enter the Room

You can position Room tiles anywhere on your canvas, grouping related Rooms together or arranging them by priority.

Rooms support multiple modes of real-time communication:

Every Room has a persistent chat powered by Agora Chat SDK. Messages are threaded, searchable, and preserved over time. Use chat for:

  • Asynchronous updates and questions
  • Sharing links and resources
  • Quick coordination
  • Documenting decisions

Rooms support live audio and video calls powered by Agora RTC SDK. Start a call when you need:

  • Real-time discussion
  • Screen sharing and demos
  • Face-to-face collaboration
  • Quick sync-ups

Calls are ephemeral, but you can summarize key points in chat or update Sparks to preserve decisions.

Rooms can have multiple channels for different types of conversations:

  • General discussion
  • Announcements
  • Specific topics or workstreams
  • Social and off-topic

Channels keep conversations organized without requiring separate Rooms for every topic.

Rooms are where Sparks live. Every Spark you create exists within a specific Room. The Room provides:

  • A canvas where Sparks are positioned spatially
  • Context for understanding what each Spark is about
  • A shared space where team members can discuss and refine Sparks

Rooms and Sparks work together: Rooms provide the space, Sparks provide the structure.

Rooms can be configured as public or private:

Public Rooms are visible to everyone in your organization. Anyone can:

  • See the Room on the canvas
  • Enter the Room and view Sparks
  • Participate in chat and calls
  • Create new Sparks

Use public Rooms for:

  • Company-wide announcements
  • Open brainstorming
  • Cross-team collaboration
  • Shared resources

Private Rooms are visible only to invited members. Access is controlled by:

  • Explicit invitations
  • Membership lists
  • Permission settings

Use private Rooms for:

  • Sensitive discussions
  • Executive planning
  • Client projects
  • Small team coordination

You can change a Room’s visibility at any time, though moving from public to private requires careful consideration of who currently has access.

To create a new Room:

  1. Click the “New Room” button on your canvas
  2. Choose a title and description
  3. Select a color and icon
  4. Set visibility (public or private)
  5. Invite initial members (for private Rooms)

The Room appears immediately on your canvas and is ready to use.

Room owners and administrators can configure:

  • Basic information: Title, description, color, icon
  • Visibility: Public or private
  • Membership: Who can access the Room
  • Channels: Create, rename, or archive channels
  • Moderation: Content policies and reporting settings
  • Notifications: How members are alerted to activity

Settings can be updated at any time to adapt to changing needs.

For private Rooms, you can invite members by:

  • Email: Send an invitation to any email address
  • Shareable link: Generate a link that grants access when clicked
  • Direct selection: Choose from existing team members

Invited members receive a notification and can enter the Room immediately.

Rooms show real-time activity indicators:

See who’s currently in the Room:

  • Profile pictures of active members
  • Presence indicators (online, away, offline)
  • Activity status (typing, in a call, viewing Sparks)

This helps you know when it’s a good time to start a conversation or join a call.

Room tiles show recent activity:

  • Unread message counts
  • New Sparks created
  • Ongoing calls
  • Recent updates

These indicators help you prioritize which Rooms need your attention.

Rooms can notify you of important events:

  • Direct mentions in chat
  • New Sparks created
  • Calls starting
  • Announcements

Configure notification preferences to stay informed without being overwhelmed.

Rooms include moderation tools to maintain productive, respectful spaces:

Any Room member can report:

  • Inappropriate messages
  • Problematic Sparks
  • Disruptive behavior

Reports are reviewed by Room administrators and platform moderators.

Room administrators can:

  • Hide or remove messages
  • Hide Sparks (see Sparks documentation)
  • Mute or remove disruptive members
  • Archive or lock channels

These actions are logged for transparency and accountability.

Members can appeal moderation decisions. Appeals are reviewed by administrators, who can reverse actions if appropriate.

Use Rooms for structured brainstorming:

  1. Create a Room for the brainstorming topic
  2. Invite relevant team members
  3. Use chat to share initial thoughts
  4. Create Sparks for promising ideas
  5. Use voice/video to discuss and refine
  6. Position Sparks on the canvas to show relationships

The Room becomes a permanent record of the session, with all ideas preserved and organized.

Use Rooms to coordinate ongoing projects:

  1. Create a Room for the project
  2. Set up channels for different workstreams
  3. Create Sparks for key deliverables and decisions
  4. Use chat for daily updates and questions
  5. Use calls for weekly syncs and reviews
  6. Update Sparks as the project evolves

The Room provides a single source of truth for project status and history.

Use Rooms for recurring team discussions:

  1. Create a Room for the team or topic
  2. Use channels to organize different discussion threads
  3. Create Sparks for decisions and action items
  4. Use chat for asynchronous discussion
  5. Use calls for real-time debate and alignment
  6. Archive old channels as topics are resolved

The Room grows with your team, accumulating knowledge and context over time.

Choose names that make the Room’s purpose obvious. “Product Ideas” is better than “Brainstorming.” “Q1 Planning” is better than “Planning Room.”

Assign colors to help categorize Rooms:

  • Blue for product and engineering
  • Green for operations and finance
  • Purple for design and creative
  • Red for urgent or high-priority

Consistent color coding makes navigation faster.

Don’t try to use one Room for everything. Create separate Rooms for distinct topics or projects. It’s easier to navigate multiple focused Rooms than one cluttered Room.

When a project ends or a topic is resolved, archive the Room. Archived Rooms are hidden from the canvas but remain accessible for reference.

Use the Room description to set expectations:

  • What the Room is for
  • Who should participate
  • How decisions are made
  • When to use chat vs. calls

Clear expectations reduce confusion and improve collaboration.

Don’t wait for problems to escalate. Address disruptive behavior early, clarify norms, and use moderation tools to maintain a productive environment.

Each Room includes:

  • Unique identifier
  • Title, description, color, icon
  • Visibility setting (public or private)
  • Membership list (for private Rooms)
  • Channel configuration
  • Moderation settings
  • Position on the canvas (x, y coordinates)
  • Timestamps (created, updated)

Rooms use Agora SDKs for real-time features:

  • Agora Chat SDK: Text messaging with presence and typing indicators
  • Agora RTC SDK: Voice and video calls with screen sharing

These SDKs provide low-latency, high-quality communication with global reach.

Room data is stored in MongoDB. Chat messages and call metadata are stored separately for performance:

  • Room metadata: MongoDB
  • Chat messages: Agora Chat cloud storage
  • Call recordings (if enabled): Agora cloud storage

This separation ensures fast Room loading while preserving full communication history.

Rooms integrate deeply with other Flowstate features:

Sparks are created and stored within Rooms. The Room provides context for understanding what each Spark is about.

Office workspaces can have their own Rooms, separate from personal canvas Rooms. This keeps team discussions organized and private.

Rooms can host Stage broadcasts, turning a discussion space into a presentation venue.

Widgets can be added to Rooms to extend functionality (transcription, polls, shared documents, etc.).

Planned improvements to Rooms include:

  • Threaded conversations for better chat organization
  • Pinned messages and Sparks for highlighting important content
  • Room templates for common use cases
  • Advanced search across all Room content
  • Integration with external tools (Slack, Teams, etc.)
  • Custom roles and permissions beyond public/private

Rooms are the foundation of collaboration in Flowstate. By providing persistent, organized spaces for discussion and decision-making, they help teams work together more effectively.