Expoot app config
The config for creating a React Native Desktop app with best-effort Expo support, used by the expoot CLI
| Type | object |
|---|---|
| File match |
expoot-app.json
|
| Schema URL | https://catalog.lintel.tools/schemas/schemastore/expoot-app-config/latest.json |
| Source | https://raw.githubusercontent.com/shirakaba/expoot/main/packages/expoot/schemas/expoot-app.schema.json |
Validate with Lintel
npx @lintel/lintel check
Properties
Different formats of the app name for use in different contexts.
3 nested properties
A filesafe name for the app consisting only of alphanumeric characters (A-z, and 0-9), e.g. 'MyApp123'. Will be used mainly for file names, e.g. 'MyApp123.xcodeproj'.
The display name of your app, e.g. 'My App 123' or '俺のアプリ'. Accepts any string. Will be used as the app name on the iOS/Android home screen, in macOS Finder, and in Windows Explorer.
The reverse-Domain Name Specifier for your app, e.g. 'com.example.my-app-123'. Accepts alphanumeric characters (A-z and 0-9), hyphens, and underscores. Will be used to fill in android.package_namespace, android.application_id, windows.namespace, ios.bundle_identifier, and macos.bundle_identifier. Hyphens and underscores will be sanitised as appropriate for these destinations, so don't worry which you use here.
Android-specific overrides for the default values (which are based on name).
3 nested properties
The application ID used on the Play Store, e.g. 'com.example.my_app_123'. Accepts only alphanumeric characters (A-z and 0-9), and underscores. Corresponds to android.defaultConfig.applicationId in app/build.gradle. Recommended to match android.package_namespace.
The package namespace, e.g. 'com.example.my_app_123'. Accepts only alphanumeric characters (A-z and 0-9), and underscores. Corresponds to android.namespace in app/build.gradle. Recommended to match android.application_id.
The display name of your app, e.g. 'My App 123' or '俺のアプリ'. Accepts any string. Corresponds to rootProject.name in settings.gradle. Will be used as the app name on the Android home screen.
iOS-specific overrides for the default values (which are based on name).
2 nested properties
The display name of your app, e.g. 'My App 123' or '俺のアプリ'. Accepts any string. Corresponds to the CFBundleDisplayName key in the Info.plist file. Will be used as the app name on the iOS home screen.
The bundle identifier of your app, e.g. 'com.example.my-app-123'. Accepts only alphanumeric characters (A-z and 0-9), and hyphens. Corresponds to the PRODUCT_BUNDLE_IDENTIFIER Xcode build variable, used to fill in the CFBundleIdentifier key in the Info.plist file.
macOS-specific overrides for the default values (which are based on name).
2 nested properties
The display name of your app, e.g. 'My App 123' or '俺のアプリ'. Accepts any string. Corresponds to the PRODUCT_BUNDLE_IDENTIFIER Xcode build variable, used to fill in the CFBundleDisplayName key in the Info.plist file. Will be used as the app name in macOS Finder.
The bundle identifier of your app, e.g. 'com.example.my-app-123'. Accepts only alphanumeric characters (A-z and 0-9), and hyphens. Corresponds to the PRODUCT_BUNDLE_IDENTIFIER Xcode build variable, used to fill in the CFBundleIdentifier key in the Info.plist file.
The {major}.{minor} version of react-native to align to, e.g. '0.82'. Defaults to the highest mutually supported across both react-native-macos and react-native-windows.
Windows-specific overrides for the default values (which are based on name).
3 nested properties
The display name of your app, e.g. 'My App 123' or '俺のアプリ'. Accepts any string. Corresponds to the ProjectName value in the .vcxproj file. Will be used as the app name in Windows Explorer.
The WinRT and C++ namespace, e.g. 'com.example.myapp123'. Accepts only alphanumeric characters (A-z and 0-9). When used in C++, . characters are converted to ::, e.g. 'com::example::myapp123'.
A filesafe name for the app consisting only of alphanumeric characters (A-z, and 0-9), e.g. 'MyApp123'. Will be used mainly for file names, e.g. 'MyApp123.vcxproj'.