Ditto’s developer integrations lets your engineers ship product quickly, safely, and with consistency are the core elements of operational scale. Here’s how Ditto can help:
Save work for developers: Say goodbye to the stray Slack message or bug ticket to update text (“Hey, can you update the text to actually say [XYZ]?”). Whether it’s in prod or in QA, Ditto reduces the time spent hunting down strings and gives time back to developers for real engineering work.
A single source of truth, accessible via API: Rather than multiple overlapping, disjointed sources for product text (Figma, a spreadsheet, a document, a localization tool, directly in development, etc.), Ditto connects sources so that everyone is on the same page. The latest version of text is always accessible directly via our API.
Building automated workflows: Use our CLI in a CI pipeline, build automation with our webhooks, or use our API to bring text to other destinations; Ditto’s developer integrations serve as building blocks.
Safety and formatting: With Ditto, developers get ready-to-use string files. Ditto handles all of the variable interpolation, pluralization, ID-naming, platform-specific formatting (JSON/ICU/iOS/Android), and localization-readiness.
💡 Go here to see Ditto’s dedicated developer hub
Developer IDs
Developer IDs in Ditto are unique human-readable identifiers for various types of Ditto data, such as projects, text items, variables, and variants, which serve as the unique key for each piece of data. This allows developers to reference this Ditto data in development, as well as to retrieve desired data from the API and CLI.
Developer IDs are generated automatically when an item is created, based on that item’s data. For instance, new projects will have Developer IDs based on the name of the project, while new text items’ will be based on the initial text content.
To view and edit a project’s Developer ID, choose Integrate into Development in the main menu found in the top right of a project in the web app.
Edit a text item’s Developer ID:
Select the text item in your project
Edit the Developer ID section in the details panel
Edit a variant’s Developer ID:
Go to the variant library and select a variant
Edit the Developer ID in the details panel
Translation with Variants
Ditto generates localization-ready files using variants, with each variant corresponding to a language/locale. In these files, a single text item (string) can contain multiple 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.