Overview

Last updated Jun 25, 2026

Learn how to contribute to the Carbon Design System from building new components and enhancing existing ones to fixing bugs and improving documentation.

Overview

Introduction

The Carbon Design System is made possible through a vibrant community of designers and developers. Anyone can contribute code, design, and documentation.

If you’re interested in getting involved but don’t know where to start, welcome! Designers and developers like you help to make Carbon great, and we’re so glad you’re here.

To get started, subscribe to our office hours and stop on by. We’ll help you find an appropriate first contribution depending on your skills and interests. Read on to learn about common types of contributions and the process.

Methods of contribution

There are several ways you can contribute, depending on your interest and bandwidth.

Carbon Labs allows you to explore, experiment and contribute new ideas, while other contribution methods allow you to volunteer on pre-existing pieces of work.

Create new components

Carbon Labs

New experimental components in the discovery phases of design and development should be created through IBM’s Carbon Labs, a dedicated environment for explorations, separate from the stable design system assets. It includes a separate GitHub repo and Storybook for code assets and a dedicated Figma space for design assets.

The purpose of Carbon Labs is to highlight innovation work that’s being done in the ecosystem but has not yet met the definition of done criteria. It is a community-organized incubation space for IBMers. The Carbon community within IBM can add assets to Labs while in the Discovery phase. Types of projects included in Labs should be design system related such as components, patterns, shared utilities, or universal guidance.

When making a net new component, follow the Product Development Lifecycle and complete all requirements in the component checklist. All requirement categories must be completed before a component can be considered done.

Improve components

Component enhancements

This work involves enhancing our components in code, like adding new features or variants. Designers are often responsible for researching UX and visual solutions and then creating a design spec for developers. Here are issues in our enhancement backlog that need design or development work.

Design kits

This work is all about creating and updating reusable components in Figma. You'll get valuable Figma experience and will collaborate with the Figma Guild. Check out the status of design kits and get involved by reaching out to the contacts listed.

Website documentation

All components and patterns require usage, style, code, and accessibility guidance on the Carbon website. You can learn how to contribute documentation smoothly and utilize our markdown templates on the documentation page. A list of components that still need documentation help can be found here.

Fixing issues and bugs

If you find a bug in the source code, you can help us by filling out a bug report and, ideally, submitting a pull request with a fix.

Icons and pictograms

You can find instructions on how to create and contribute UI icons, app icons, and pictograms on the IBM Design Language site.