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

# Collaboration

> Work together with team members through project sharing, role-based access, and multi-tenant workspaces

8Space is built for team collaboration from the ground up. Multiple users can work together on projects within shared workspaces, with clear roles and permissions that control who can view, edit, and manage work.

## Multi-Tenancy Architecture

8Space organizes collaboration around **tenants** (workspaces) that contain projects:

<Steps>
  <Step title="Tenant Level">
    A tenant is a workspace for an organization or team. Each tenant has:

    * Unique slug (URL identifier)
    * Tenant name
    * Tenant members with roles
    * Multiple projects
  </Step>

  <Step title="Project Level">
    Projects live inside tenants and have:

    * Project name and description
    * Workflow columns and tasks
    * Project members (can be a subset of tenant members)
    * Project-specific permissions
  </Step>
</Steps>

<Info>
  The tenant slug appears in URLs like `/app/{tenantSlug}/projects/{projectId}`, making workspaces easy to identify and share.
</Info>

## Tenant Roles

Users can have one of three roles at the tenant level:

<Tabs>
  <Tab title="Owner">
    **Full control** over the tenant:

    * Manage tenant settings
    * Invite and remove members
    * Assign tenant roles
    * Create and archive projects
    * Access billing (if applicable)

    **Typical users**: Company founders, workspace administrators
  </Tab>

  <Tab title="Admin">
    **Administrative privileges**:

    * Invite and manage members
    * Create projects
    * Manage project settings
    * Cannot change billing or delete the tenant

    **Typical users**: Team leads, project managers
  </Tab>

  <Tab title="Member">
    **Standard collaboration access**:

    * View tenant projects
    * Participate in projects they're added to
    * Cannot invite others or create projects

    **Typical users**: Individual contributors, developers, designers
  </Tab>
</Tabs>

<Note>
  Tenant roles control workspace-level actions. Project-level permissions are controlled separately by project roles.
</Note>

## Project Roles

Each user in a project has one of three project-specific roles:

<CardGroup cols={3}>
  <Card title="Owner" icon="crown">
    **Full project control**:

    * Edit all project settings
    * Add/remove members
    * Assign project roles
    * Archive project
    * Create, edit, delete tasks
    * Move tasks across workflow
    * Set dependencies
  </Card>

  <Card title="Editor" icon="pencil">
    **Full task management**:

    * Create tasks
    * Edit all tasks
    * Delete tasks
    * Move tasks across workflow
    * Drag cards on Board
    * Adjust dates on Timeline
    * Cannot change project settings or members
  </Card>

  <Card title="Viewer" icon="eye">
    **Read-only access**:

    * View all project views
    * See task details
    * Access Dashboard metrics
    * Cannot create, edit, or delete
    * Cannot move tasks
    * Cannot change dates
  </Card>
</CardGroup>

### Role-Based View Behavior

The UI adapts based on your project role:

<AccordionGroup>
  <Accordion title="Backlog View" icon="list">
    * **Owner/Editor**: Can create tasks, edit inline, drag to reorder, delete
    * **Viewer**: All inputs disabled, no drag handles, no delete buttons, notice shown at top
  </Accordion>

  <Accordion title="Board View" icon="table-columns">
    * **Owner/Editor**: Can create cards, drag between columns, delete
    * **Viewer**: Cards not draggable, quick-add forms disabled, notice shown at top
  </Accordion>

  <Accordion title="Timeline View" icon="chart-gantt">
    * **Owner/Editor**: Can drag task bars, resize dates, manage dependencies
    * **Viewer**: Task bars not draggable, dependency editor disabled, read-only
  </Accordion>

  <Accordion title="Dashboard View" icon="chart-line">
    * **All roles**: Full access to metrics and charts (read-only for everyone)
  </Accordion>
</AccordionGroup>

<Tip>
  When you have **Viewer** role, you'll see a notice like "Viewer role: editing is disabled" at the top of views where editing would normally be possible.
</Tip>

## Project Members

Project membership is managed at the project level:

* **Project members** are a subset of tenant members
* You must be a tenant member before being added to a project
* Each project member has a project role (Owner, Editor, or Viewer)
* Tenant owners can add any tenant member to any project

### Member Profiles

Each member has a profile displaying:

* **Display name**: Shown in assignee dropdowns and Dashboard workload widget
* **User ID**: Unique identifier
* **Avatar** (optional): Profile picture (if configured)

<Info>
  Display names appear throughout the UI when tasks are assigned, making it easy to see who's responsible for what.
</Info>

## Inviting Team Members

To collaborate with others, you need appropriate permissions:

<Steps>
  <Step title="Tenant-level invites">
    **Owners** and **Admins** can invite users to the tenant workspace, giving them access to the organization's workspace.
  </Step>

  <Step title="Project-level invites">
    **Project Owners** can add existing tenant members to specific projects and assign their project role.
  </Step>

  <Step title="Role assignment">
    Choose the appropriate role (Owner, Editor, or Viewer) based on what the person needs to do.
  </Step>
</Steps>

<Warning>
  You cannot invite someone directly to a project if they aren't already a tenant member. Add them to the tenant first, then to the project.
</Warning>

## Real-Time Collaboration

While 8Space doesn't currently have live presence indicators or real-time updates, the system is designed for asynchronous team collaboration:

* **Data refreshes** when navigating between views
* **Manual refresh** is available by navigating away and back
* **Recent changes** are reflected after a browser reload

<Card title="Collaboration Patterns" icon="users-gear">
  Teams typically collaborate by:

  * Assigning clear task ownership
  * Updating task status as work progresses
  * Using comments and descriptions for context
  * Reviewing Dashboard metrics in standups
  * Planning together in Backlog view
  * Tracking progress in Board view
</Card>

## Workload Distribution

The Dashboard's **Workload by Assignee** widget helps teams balance work:

* Shows each member's active task count
* Helps identify overloaded team members
* Assists in redistributing tasks
* Visible to all project members (including viewers)

<Tip>
  Use the workload widget during sprint planning to ensure no one is overcommitted and work is distributed fairly.
</Tip>

## Team-Friendly Features

### Assignee Management

Tasks can be assigned to team members:

* **Backlog view**: Use assignee dropdown to assign or change
* **Board view**: Assignee name appears on each card
* **Unassigned option**: Leave tasks unassigned if ownership isn't clear yet

### Activity Tracking

Each task maintains an activity log capturing:

* Task creation
* Field changes (title, dates, status, etc.)
* Actor ID (who made the change)
* Timestamp
* Event payload (before/after values)

<Note>
  While activity logs are captured in the data model, they may not yet be exposed in the UI for viewing. This is a foundation for future audit and history features.
</Note>

## Permissions Summary

Quick reference for what each role can do:

| Action                  | Tenant Owner | Tenant Admin | Tenant Member | Project Owner | Project Editor | Project Viewer |
| ----------------------- | ------------ | ------------ | ------------- | ------------- | -------------- | -------------- |
| Create tasks            | ✓            | ✓            | ✓             | ✓             | ✓              | ✗              |
| Edit tasks              | ✓            | ✓            | ✓             | ✓             | ✓              | ✗              |
| Delete tasks            | ✓            | ✓            | ✓             | ✓             | ✓              | ✗              |
| Move tasks (drag)       | ✓            | ✓            | ✓             | ✓             | ✓              | ✗              |
| View Dashboard          | ✓            | ✓            | ✓             | ✓             | ✓              | ✓              |
| Manage dependencies     | ✓            | ✓            | ✓             | ✓             | ✓              | ✗              |
| Add project members     | ✓            | ✓            | ✗             | ✓             | ✗              | ✗              |
| Invite to tenant        | ✓            | ✓            | ✗             | -             | -              | -              |
| Manage project settings | ✓            | ✓            | ✗             | ✓             | ✗              | ✗              |

<Info>
  Permissions are enforced both in the UI (by hiding/disabling controls) and on the backend (by validating roles before processing actions).
</Info>

## Best Practices

<CardGroup cols={2}>
  <Card title="Assign Clearly" icon="user-check">
    Every task should have an owner. Clear assignment prevents confusion and ensures accountability.
  </Card>

  <Card title="Use Viewer Role" icon="eye">
    Give stakeholders and clients Viewer access for transparency without risk of accidental changes.
  </Card>

  <Card title="Balance Workload" icon="scale-balanced">
    Regularly check the workload widget and redistribute tasks when imbalances appear.
  </Card>

  <Card title="Right-Size Permissions" icon="shield-check">
    Grant the minimum role needed. Most team members work well as Editors; reserve Owner for those who manage the project.
  </Card>

  <Card title="Document in Tasks" icon="file-text">
    Use task descriptions and checklists to share context asynchronously, reducing meeting overhead.
  </Card>

  <Card title="Review Together" icon="users">
    Use the Dashboard in team standups and reviews to align on progress and priorities.
  </Card>
</CardGroup>

## Future Collaboration Features

While 8Space already supports multi-user projects and role-based permissions, potential future enhancements include:

* Real-time presence indicators showing who's viewing the same page
* Live updates when others make changes (no refresh needed)
* In-app notifications for task mentions and assignments
* Task comments and threaded discussions
* @mentions to notify specific team members
* Detailed activity timeline UI for audit and history

<Tip>
  These features are not yet implemented but align with the platform's collaboration-first design philosophy.
</Tip>
