> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gainable.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Collaboration

> Add team chat, file sharing, and comments to your apps

## Built-in collaboration

Gainable apps can include collaboration features powered by Weavy. These are self-contained components that work out of the box.

## Available features

### Team chat

Real-time messaging for groups.

```text theme={null}
"Add a team chat to the project page"
"Include a group chat for discussing deals"
```

What you get:

* Real-time messaging
* Message history
* Typing indicators
* Read receipts
* Emoji reactions

### Direct messaging

Private conversations between users.

```text theme={null}
"Add a messenger for direct messages between users"
"Let users send private messages"
```

What you get:

* One-on-one conversations
* Conversation list
* Unread message counts
* User presence indicators

### File sharing

Upload and share documents.

```text theme={null}
"Add file sharing to the project"
"Let users upload documents to deals"
```

What you get:

* File upload (drag and drop)
* File previews
* Download options
* File organization

### Comments

Discussion threads on specific items.

```text theme={null}
"Add comments to tasks"
"Let users comment on deals"
```

What you get:

* Threaded discussions
* Mentions (@user)
* Timestamps
* Edit and delete

### Activity feeds

Social-style updates and announcements.

```text theme={null}
"Add an activity feed to the dashboard"
"Include a news feed for team updates"
```

What you get:

* Post creation
* Comments on posts
* Reactions
* Chronological feed

### AI Copilot

Add an AI-powered chat assistant alongside your team collaboration features.

```text theme={null}
"Add an AI copilot to the project page that can look up
task data and answer questions about the project"
```

```text theme={null}
"Add a smart assistant to the deals page that helps
reps find deals and get pipeline insights"
```

<Info>
  **Copilot vs team chat:** The copilot is a conversational assistant powered by [Gaia Copilot](/copilots/overview). It responds with data lookups and knowledge-based answers. Team chat is human-to-human messaging. You can use both on the same page.
</Info>

## How to request collaboration

Simply describe what you want in natural language:

<CodeGroup>
  ```text Chat theme={null}
  "Add a team chat to the project page"
  "Include chat for discussing deals"
  "Add group messaging"
  ```

  ```text Files theme={null}
  "Add file sharing"
  "Let users upload documents"
  "Include file attachments"
  ```

  ```text Comments theme={null}
  "Add comments to tasks"
  "Let users discuss items"
  "Include threaded comments"
  ```

  ```text Messaging theme={null}
  "Add direct messages"
  "Let users message each other"
  "Include private messaging"
  ```
</CodeGroup>

## Where to place collaboration

You can add collaboration features to specific contexts:

### Page-level chat

```text theme={null}
"Add a team chat to the dashboard page"
```

Everyone on that page sees the same chat.

### Item-level chat

```text theme={null}
"Add a chat for each project"
```

Each project has its own separate conversation.

### Global messaging

```text theme={null}
"Add a messenger accessible from anywhere"
```

Users can access direct messages from any page.

## Notifications

Collaboration features include notifications:

* **Toast notifications** - Pop-up alerts for new messages
* **Badge counts** - Unread message indicators
* **Sound alerts** - Optional audio notifications

<Note>
  Notifications are enabled by default. Users can manage their preferences.
</Note>

## User presence

See who's online and active:

* **Online indicators** - Green dots for active users
* **Typing indicators** - See when someone is typing
* **Last seen** - Know when users were last active

## Best practices

### Choose the right feature

| Need                      | Use        |
| ------------------------- | ---------- |
| Team discussions          | Chat       |
| Private conversations     | Messenger  |
| Document collaboration    | Files      |
| Item-specific discussions | Comments   |
| Announcements             | Posts/Feed |

### Place chat contextually

<CodeGroup>
  ```text Good theme={null}
  "Add a chat to each project page for project-specific discussions"
  ```

  ```text Less useful theme={null}
  "Add chat" (without specifying where)
  ```
</CodeGroup>

### Combine features

```text theme={null}
"Add to each project:
- Team chat for discussions
- File sharing for documents
- Activity feed for updates"
```

## Example integrations

### Project management

```text theme={null}
Build a project tracker with:
- Projects with name and status
- Tasks for each project

On the project detail page, add:
- Team chat for discussions
- File sharing for documents
```

### CRM

```text theme={null}
Build a CRM with:
- Companies and contacts
- Deals linked to companies

On each deal page, add:
- Comments for internal notes
- File attachments for proposals
```

### Team dashboard

```text theme={null}
Build a team dashboard with:
- Activity feed for announcements
- Team chat for discussions
- File area for shared documents
```

## Learn more

<CardGroup cols={2}>
  <Card title="Weavy components" icon="comments" href="/skills/weavy">
    Detailed collaboration features
  </Card>

  <Card title="Real-time updates" icon="bolt" href="/building/real-time">
    How real-time sync works
  </Card>
</CardGroup>
