Team Management

Learn about the various roles and privileges available in Knapsack.
View as Markdown

Overview

The Knapsack Design System Platform uses a role-based permissions system to control access to specific features and functionalities. This ensures that users can only access the parts of the platform that are relevant to their role, maintaining security and organization within your workspace. This section provides an overview of the different user roles, their permissions, and how to manage users within the platform.

User Roles

AdminHas full control over the design system platform, including managing users, permissions, and system-wide settings. Can create, edit, and delete components, guidelines, and documentation.
ContributorCan create, edit, and update design assets, components, and documentation within the platform. Typically responsible for maintaining and evolving the design system.
ConsumerUses the design system’s components and guidelines to build products or interfaces. Can access and implement design assets but cannot modify them.
ViewerHas read-only access to the design system. Can browse and reference components, guidelines, and documentation but cannot make any changes.

Permissions

Branching & Publishing

In Knapsack, branching is required to make any changes to ensure stability, prevent accidental errors, and allow multiple updates to be worked on simultaneously without conflicts. Think of it as a copy of your workspace where updates can be tested and refined before being finalized.

When a team member wants to make a change, they first create a branch. This allows them to work on updates safely without disrupting the published version. Once the changes are complete and reviewed, they can be published.

AdminContributorConsumerViewer
Can create a branch
Can request review
Can publish changes
Can delete their branches
Can delete any branch

Section Access

Knapsack is organized into different sections to help teams manage their design system efficiently. Each section plays a key role in maintaining a well-structured and scalable design system.

  • Design - Connect design sources and manage design tokens and variables.
  • Document - Create and share guidelines, best practices, and documentation for your system.
  • Patterns - Store reusable components and design patterns to ensure consistency across projects.
  • Prototype - Build and test interactive prototypes before finalizing designs.
  • Settings - Manage system configurations, permissions, and overall project settings.
AdminContributorConsumerViewer
Design: Can Access
Design: Can Edit
Document: Can Access
Document: Can Edit
Patterns: Can Access
Patterns: Can Edit
Prototype: Can Access
Prototype: Can Edit
Settings: Can Access
Settings: Can Edit

User Management

AdminContributorConsumerViewer
Can invite users At or below their level
Can change users role
Can remove users