<- Back to all posts

Building a content system in Ditto

Jessica Ouyang
January 26, 2021

From the very beginning, we've built Ditto with the notion that product text should be thought of and implemented as a system. After all, the way in which text gets reused in-product to communicate to users is so dependent on context and intent.

When we first launched components in Ditto six months ago, which gave teams the ability to create text items that sync across different projects and are stored in a team's component library, we knew we were just getting started. In these six months, teams in Ditto have created over a thousand components to sync over 7,900 instances of text! 🤯

Today, we're launching a major revamp of the component library. We're so excited for this to help teams build out their content systems in Ditto.


We redesigned the component library to give organization and context into how individual components work together, using the levels of hierarchy users are already familiar with as building blocks.

The component library in Ditto now supports a forward-slash naming convention (like in Figma or Sketch!) that brings components into up to three levels of nesting. Just like in projects, the component library also supports drag and drop organization to bring components into groups and blocks. Used with notes and tags, we hope components can fully support the product content systems of teams.

You can go ahead and start using the new component library with any of your existing components by adding forward-slash naming! Here are a few examples of component structuring we've been using in our own component library:

  • Onboarding/New User/Success
  • Onboarding/New User/Payment Error
  • CTA/Check out
  • Legal/Terms and Conditions/Warning

We've seen it be really helpful on our own team to group and nest components by different product areas and/or use cases.


As we see teams' component libraries grow, we wanted to make sure they were also easy to navigate. Along with component nesting, the component library now also supports a collapsible directory tree navigation.


The component library now also supports a more powerful search and the ability to filter by tags. You can search for any of the component names or tags to filter down all of the components in your library!

Getting started

Over the past few months, we've spoken to so many teams who have shared with us how they're currently using components across projects in Ditto — everything from standardizing the types of error messages a user might receive to keeping product descriptions consistent across features. We're so excited to see what teams do with our new component library features.

To get started, just go to your team's component page or watch a video overview in our new guide on organizing components.

Success! 🥳 Look forward to Ditto updates in your inbox.
Oh no — something went wrong while submitting the form. Please try again!