Markdown

Store metadata: title, description, and screenshots

All store texts and images of your app live version-controlled in the app repository, and the pipeline uploads them every time it publishes.

On this page

You maintain titles, descriptions, keywords, links, and screenshots as files in the app repository in the Fastlane structure; the publish-ios and publish-android jobs upload them every time they publish. In the platform you edit the texts in an editor and manage the languages through the language chips.

Texts per language

Every language has a folder such as de-DE or en-US with one text file per field, for iOS under ios/fastlane/metadata/<language>/:

File Content
name.txt App name in the store
subtitle.txt Subtitle
description.txt Description
keywords.txt Search keywords, separated by commas
release_notes.txt What’s new
support_url.txt, marketing_url.txt, privacy_url.txt Links to support, marketing, and privacy policy
apple_tv_privacy_policy.txt Privacy policy for Apple TV
app_clip_default_experience_subtitle.txt Subtitle of the App Clip

For Android they live under android/fastlane/metadata/<language>/:

File Content
title.txt App name in the store
short_description.txt Short description
full_description.txt Description
keywords.txt Search keywords, separated by commas
recent_changes.txt Changes in this version
support_url.txt, marketing_url.txt, privacy_url.txt Links to support, marketing, and privacy policy
promotional_text.txt Promotional text
changelogs/default.txt Default changelog

Details for the whole app

Language-independent details live directly in the metadata folder. For iOS, ios/fastlane/metadata/ holds the categories (primary and secondary with subcategories), copyright.txt, app_store_title.txt, app_default_language.txt, and the app icon app_icon.png at 1024 × 1024 pixels. The age rating including gambling and loot boxes is in app_rating_config.json, the privacy details in app_privacy.json, and the contact details for review in review_information/*.txt. For Android, android/fastlane/metadata/ holds the icon app_icon.png and the data safety details google_data_safety.csv.

Android store graphics live per language under images/: icon.png (512 × 512 pixels), featureGraphic.png (1024 × 500 pixels), promoGraphic.png, and tvBanner.png.

Screenshots

You place screenshots in the metadata folders yourself (iOS: iPhone and iPad, assigned by filename; Android: phone plus 7-inch and 10-inch tablets) or let the pipeline generate them through UI tests:

  1. Define the screens in test/goldens/Framefile.json and the marketing texts above them in test/goldens/<language>/title.strings.
  2. Commit an empty file .doppelt-digital-create-new-screenshots to the repository root and push to main.
  3. The pipeline renders the screens in all project languages in screenshot test mode (SCREENSHOT_TEST_MODE), frames them with Frameit, and stores them in the metadata folders.
  4. On the next publish, the pipeline uploads the new screenshots and removes the marker file again.