The CMS design system (CMSDS) provides a set of components and styles to meet many design and development needs. However, there are cases where product teams need to modify a design system beyond theming or need to share their customizations with other teams. Child design systems are the intended solutions for these cases.
What is a child design system?
Child design systems are for sharing common, site-specific, design and code resources between teams working on the same CMS sites (i.e. Healthcare.gov, Medicare.gov). They contain the core CMS Design System in addition to site-specific customizations (i.e. brand colors, site header, custom icons, etc).
Child design systems include:
- An NPM package containing design system code and assets
- A documentation site for product teams to reference
- Shared design assets (i.e. Sketch Library or Sketch file)
- Designers and engineers that actively maintain and update the system
Note: Child design systems were previously called "site packages". This name change reflects our vision for these systems to be more independent and self-sustaining within the CMS Design System family. Many of the internal changes in the v2 release aim to facilitate this vision by simplifying the experience of maintaining and contributing to child design systems.
Existing child design systems
If you are working on a project under either of these sites, we highly recommend using these child design systems. If you are working under a different CMS site and are interested in creating a new child design system, please reach out to the core CMS design system team.
Child design system guidelines
- The healthcare.gov and medicare.gov child design systems are actively maintained by the core CMSDS team. Please reach out if you have questions about adoption, use, contribution, or anything else related to these design systems.
- Users of child design systems are encouraged to contribute back to the larger CMS design system community by filing issues/bugs in Github or Jira, giving feedback, and general maintenance. Collaboration and participation are important to the success of the CMS design system family.