Manifest [package] Section
The [package]
section defines the basic details about the application, such as the unique package identifier, application title, and icon. This section is mandatory in every manifest file.
[package]
# package details such as id, title and icon
Fields
id
(string, required): A unique identifier used to identify the application package. This identifier is expected to be unique across the Amazon Appstore. By convention, this identifier is used as a prefix to namespace all other ids in the package. This identifier is used to manage the lifecycle for the application packages, and must not be changed to ensure updates work seamlessly. The identifier string must follow these rules:- Allowed characters: uppercase letters
A-Z
, lowercase lettersa-z
, digits0-9
, dot.
and underscore_
. - Use reverse DNS notation
<tld>.<company_name>.<app_name>
, with minimum of 2 segments where each segment starts with a letter.
// Valid identifiers id = "com.foo.bar" id = "de.fooz" // Invalid identifiers id = "a_single_word" id = "1numeral.foo"
Note: If you have a Fire OS app published on the Amazon Appstore, reuse the same package identifier to ensure both Fire OS and Vega apps are linked together, and provide a seamless transition for your customers to the new Vega devices.- Allowed characters: uppercase letters
-
title
(string, required): A user visible string for the name of the app. Two types are supported:-
Hard-coded title: The title should be short to fit within a display tile without truncation.
// Recommended title = "Foo App" // Not recommended title = "Lorem ipsum dolor sit amet, consectetur adipiscing elit"
-
Localized title: Allows different titles based on language. To use the locale feature, follow these requirements:
- The title string must be declared in this format:
@text/<title_asset_id>
- where the@text
is a reserved keyword, and thetitle_asset_id
is a non-empty resource identifier you define.title = @text/
is not allowed. - When the title string is defined as a localized title, the default title string must be defined in the puff.json file under
assets/text
under the package root.
// Sample localized title title = "@text/sample_title"
// Sample title resource under assets/text/puff.json: { "resources": { "sample_title": "Sample Title Content To Display" }, "dir": "ltr" }
- The title string must be declared in this format:
-
icon
(string, required): Image file to be used as the icon for the app. This image is displayed within the Settings app. To add an app icon, the image file must be saved in assets/image under the package root. When not supplied, a default app icon is used.- Required format:
@image/<icon_file_name>
- where@image
is a reserved keyword, andicon_file_name
is the name of the image file saved under assets/image. - Recommended resolution and format: 512x512, PNG
- Maximum file size: 1MB
- Recommended style: light colored solid icons provide optimal visuals in the Settings menu
- Required format:
Last updated: Sep 30, 2025