Contributing

Contributions are welcome to the Pajamas UI Kit. This page outlines different contribution pathways depending on your access level and relationship to GitLab.

GitLab team members with Figma organization access can directly contribute to the UI Kit files. Wider community contributors can contribute through alternative pathways as we cannot share edit access directly because of licencing and security restrictions. This means not all types of wider contribution are possible as the Figma implementation will always need to be completed by a GitLab team member and not all files are publically available.

Contributing as a GitLab team member

NOTE:

Figma Organization Access Required: Contributing to the Pajamas UI Kit requires access to GitLab's paid Figma organization. This access is only available to GitLab team members with a designated Figma seat. The UI Kit files have dependencies on shared libraries, variables, and other assets that can only be accessed by members of our Figma organization.

Contributions include bug fixes, component usability improvements, or updating component instances.

Before you start

  1. Please review the design system contribution process.
  2. Check whether an existing issue already covers your contribution.
  3. If one exists, add your work there; if not, create a new issue with the Figma update template. The template provides a checklist to guide your updates and ensures your work stays aligned with the design system process.
  4. Refer to the component and breaking change guides while working.

Review requests

Requesting a branch review from a Figma maintainer is part of the Figma update template.

The review request description field is used to automatically generate release notes. Use comments to add additional context for reviewers and link to the related issue.

Description format rules

  • Start each line with a hyphen -.
  • Begin with one of these verbs: "Adds", "Enhances", "Changes", "Removes", "Fixes", or "Deprecates".
  • Be clear and concise.

Examples

Do
- Adds multiple-choice icon 
Don’t
- Hey can you take a look at this? I added a new icon 

Multiple-line merge descriptions

Additional details can be added after the first line. Subsequent lines don't need to start with action verbs:

- Removes header property from Modal - Header property is not optional in GitLab UI - Updates instances to have realistic content 

Contributing as wider community contributor

If you are not a GitLab team member with access to our paid Figma organization, you cannot directly edit the Pajamas UI Kit files. However, there are still valuable ways to contribute to the design system:

Getting started

  1. Explore the public resources: Review the Pajamas design system documentation and community Figma files.
  2. Start a conversation: Create an issue to discuss your ideas before investing significant time.
  3. Follow the contribution process: Refer to the design system contribution process for guidance on how contributions are evaluated and integrated.

Alternative contribution pathways

Share design concepts and feedback

  • Create your own Figma files: Develop design concepts, improvements, or new components in your own Figma workspace.
  • Share via issues: Create an issue with screenshots, links to your Figma files, or detailed descriptions of your proposed changes.
  • Provide feedback: Comment on existing issues or merge requests with suggestions and insights.

Documentation and code contributions

Whether or not you can access our paid Figma organization, you can contribute to our open-source documentation and component code repositories in GitLab.

  • Improve documentation: Contribute to design system documentation, guidelines, and best practices in our Pajamas design system project.
  • Code contributions: Help improve the GitLab UI component library that implements the design system.
  • Accessibility improvements: Suggest or implement accessibility enhancements.

Community engagement

  • Report issues: Help identify bugs, inconsistencies, or usability problems in the design system.
  • Share use cases: Describe how you're using or would like to use design system components.
  • Participate in discussions: Engage in design system conversations and provide community perspective.

Last updated at: