Components in Ditto are strings maintained in your team’s component library that can be attached to individual instances of that text in Ditto projects. Editing a component will also edit all of its instances, ensuring consistency and reusability across design and development.

You can treat your team’s component library as a centralized, searchable repository of your product’s text.

Developer IDs

Developer IDs in Ditto are the unique identifiers for strings and serve as the key for each string. This allows developers to reference strings in development.

Components have developer IDs generated from the component name. You can configure the rules for how these developer IDs get generated in your workspace developer integration settings. To quickly access the developer IDs of text in a Figma file, you can open the Ditto Figma plugin in any file (in design or dev mode).

Variants and folders in Ditto also have developer IDs, which you can access in the Ditto web app.


Ditto generates localization-ready files using Ditto variants, with each variant corresponding to a language/locale. In these files, the same string has the same developer ID (aka key) across variants, making it easy to display different language files to users. To handle localized strings, you can choose to either:

  • Localize in-house by providing translations in the Ditto app
  • Integrate Ditto with a translation management system (either using one of our existing integrations or via our API)

To learn more about localizing with Ditto, check out this guide.

Variable Interpolation

Variable interpolation and dynamic values are handled by variables in Ditto. When fetched by the API/CLI or in manual exports, Ditto will handle variable formatting specific to each string file format.


You can use Ditto to handle plural forms of text. Developers can then display plural forms based on dynamic values, rather than interpolate text for variable amounts themselves. Plural forms will get included based on the string file format.

String Import

In Ditto, you can import text from string files or spreadsheets. When importing a string file, Ditto maintains the keys (developer IDs) you already have in your file, making it easy to transition to managing string files with Ditto.