Skip to main content

rnv.project Schema Definition

The schema defines the following properties:

workspaceID (string)

Workspace ID your project belongs to. This will mach same folder name in the root of your user directory. ie ~/ on macOS

projectVersion (string)

Version of project

projectName (string)

Name of the project which will be used in workspace as folder name. this will also be used as part of the KEY in crypto env var generator

isTemplate (boolean)

Marks project as template. This disables certain user checks like version mismatch etc

defaults (object)

Default system config for this project

Properties of the defaults object:

ports (object)

Allows you to assign custom port per each supported platform specific to this project. this is useful if you foten switch between multiple projects and do not want to experience constant port conflicts

supportedPlatforms (array)

Array list of all supported platforms in current project

The object is an array with all elements of the type string.

portOffset (number)

Offset each port default value by increment

defaultCommandSchemes (object)

List of default schemes for each rnv command. This is useful if you want to avoid specifying -s ... every time your run rnv command. bu default rnv uses -s debug. NOTE: you can only use schemes you defined in buildSchemes

targets (object)

Override of default targets specific to this project

pipes (array)

To avoid rnv building buildHooks/src every time you can specify which specific pipes should trigger recompile of buildHooks

The object is an array with all elements of the type string.

crypto (object)

This prop enables automatic encrypt and decrypt of sensitive information in your project. RNV will generate new env variable with can be used to encrypt and decrypt. this env var is generated by combining (and sanitizing) 2 properties from your renative.json: workspaceID + projectName. These 2 properties are also used to generate path on your local machine where encrypted files will be decrypted into.

Properties of the crypto object:

path (string, required)

Relative path to encrypted file in your renative project. Example: "./secrets/mySecrets.enc"

isOptional (boolean)

Mark if crypto object should not checked every run

paths (object)

Define custom paths for RNV to look into

Properties of the paths object:

appConfigsDir (string)

Custom path to appConfigs. defaults to ./appConfigs

platformTemplatesDirs (object)

Custom location of ejected platform templates. this is populated after you run rnv platform eject

appConfigsDirs (array)

Array of custom location app configs directories`

The object is an array with all elements of the type string.

platformAssetsDir (string)

Custom path to platformAssets folder. defaults to ./platformAssets

platformBuildsDir (string)

Custom path to platformBuilds folder. defaults to ./platformBuilds

pluginTemplates (object)

Allows you to define custom plugin template scopes. default scope for all plugins is rnv.

permissions (object)

Permission definititions which can be used by app configs via includedPermissions and excludedPermissions to customize permissions for each app

Properties of the permissions object:

android (object)

Android SDK specific permissions

ios (object)

iOS SDK specific permissions

engines (object)

List of engines available in this project

enableHookRebuild (boolean)

If set to true in ./renative.json build hooks will be compiled at each rnv command run. If set to false (default) rebuild will be triggered only if dist folder is missing, -r has been passed or you run rnv hooks run directly making your rnv commands faster

extendsTemplate (string)

You can extend another renative.json file of currently applied template by providing relative or full package name path. Exampe: @rnv/template-starter/renative.json

tasks (object)

Allows to override specific task within renative toolchain. (currently only install supported). this is useful if you want to change specific behaviour of built-in task. ie install task triggers yarn/npm install by default. but that might not be desirable installation trigger

Properties of the tasks object:

install (object, required)

Properties of the install object:

script (string, required)

platform (object, required)

integrations (object)

Object containing integration configurations where key represents package name

env (object)

Object containing injected env variables

runtime

This object will be automatically injected into ./platfromAssets/renative.runtime.json making it possible to inject the values directly to JS source code

isMonorepo (boolean)

Mark if your project is part of monorepo

monoRoot (string)

Define custom path to monorepo root where starting point is project directory

custom

Object used to extend your renative with custom props. This allows renative json schema to be validated

skipAutoUpdate (boolean)

Enables the equivalent to passing --skipDependencyCheck parameter on every rnv run so you don't have to use it

common (object)

Common config props used as default props for all available buildSchemes

Properties of the common object:

includedPermissions (array)

Allows you to include specific permissions by their KEY defined in permissions object. Use: ['*'] to include all

The object is an array with all elements of the type string.

excludedPermissions (array)

Allows you to exclude specific permissions by their KEY defined in permissions object. Use: ['*'] to exclude all

The object is an array with all elements of the type string.

id (string)

Bundle ID of application. ie: com.example.myapp

idSuffix (string)

version (string)

Semver style version of your app

versionCode (string)

Manual verride of generated version code

versionFormat (string)

Allows you to fine-tune app version defined in package.json or renative.json. If you do not define versionFormat, no formatting will apply to version.

versionCodeFormat (string)

Allows you to fine-tune auto generated version codes. Version code is autogenerated from app version defined in package.json or renative.json.

versionCodeOffset (number)

title (string)

Title of your app will be used to create title of the binary. ie App title of installed app iOS/Android app or Tab title of the website

description (string)

General description of your app. This prop will be injected to actual projects where description field is applicable

author (string)

Author name

license (string)

Injects license information into app

includedFonts (array)

Array of fonts you want to include in specific app or scheme. Should use exact font file (without the extension) located in ./appConfigs/base/fonts or * to mark all

The object is an array with all elements of the type string.

backgroundColor (string)

Defines root view backgroundColor for all platforms in HEX format

Constraints:

  • Regex pattern: ^#

splashScreen (boolean)

Enable or disable splash screen

fontSources (array)

Array of paths to location of external Fonts. you can use resolve function here example: {{resolvePackage(react-native-vector-icons)}}/Fonts

The object is an array with all elements of the type string.

assetSources (array)

Array of paths to alternative external assets. this will take priority over ./appConfigs/base/assets folder on your local project. You can use resolve function here example: {{resolvePackage(@flexn/template-starter)}}/appConfigs/base/assets

The object is an array with all elements of the type string.

includedPlugins (array)

Defines an array of all included plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: includedPlugins is evaluated before excludedPlugins. Use: ['*'] to include all

The object is an array with all elements of the type string.

excludedPlugins (array)

Defines an array of all excluded plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: excludedPlugins is evaluated after includedPlugins. Use: ['*'] to exclude all

The object is an array with all elements of the type string.

runtime

custom

buildSchemes (object)

platforms (object)

Object containing platform configurations

Properties of the platforms object:

android (object)

Properties of the android object:

buildSchemes (object)

includedPermissions

Allows you to include specific permissions by their KEY defined in permissions object. Use: ['*'] to include all

excludedPermissions

Allows you to exclude specific permissions by their KEY defined in permissions object. Use: ['*'] to exclude all

id

Bundle ID of application. ie: com.example.myapp

idSuffix

version

Semver style version of your app

versionCode

Manual verride of generated version code

versionFormat

Allows you to fine-tune app version defined in package.json or renative.json. If you do not define versionFormat, no formatting will apply to version.

versionCodeFormat

Allows you to fine-tune auto generated version codes. Version code is autogenerated from app version defined in package.json or renative.json.

versionCodeOffset

title

Title of your app will be used to create title of the binary. ie App title of installed app iOS/Android app or Tab title of the website

description

General description of your app. This prop will be injected to actual projects where description field is applicable

author

Author name

license

Injects license information into app

includedFonts

Array of fonts you want to include in specific app or scheme. Should use exact font file (without the extension) located in ./appConfigs/base/fonts or * to mark all

backgroundColor

Defines root view backgroundColor for all platforms in HEX format

splashScreen

Enable or disable splash screen

fontSources

Array of paths to location of external Fonts. you can use resolve function here example: {{resolvePackage(react-native-vector-icons)}}/Fonts

assetSources

Array of paths to alternative external assets. this will take priority over ./appConfigs/base/assets folder on your local project. You can use resolve function here example: {{resolvePackage(@flexn/template-starter)}}/appConfigs/base/assets

includedPlugins

Defines an array of all included plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: includedPlugins is evaluated before excludedPlugins. Use: ['*'] to include all

excludedPlugins

Defines an array of all excluded plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: excludedPlugins is evaluated after includedPlugins. Use: ['*'] to exclude all

runtime

custom

extendPlatform

assetFolderPlatform

Alternative platform assets. This is useful for example when you want to use same android assets in androidtv and want to avoid duplicating assets

engine

ID of engine to be used for this platform. Note: engine must be registered in engines field

entryFile

Alternative name of the entry file without .js extension

bundleAssets

If set to true compiled js bundle file will generated. this is needed if you want to make production like builds

enableSourceMaps

If set to true dedicated source map file will be generated alongside of compiled js bundle

bundleIsDev

If set to true debug build will be generated

getJsBundleFile

enableAndroidX

Enables new android X architecture

enableJetifier

Enables Jetifier

signingConfig

Equivalent to running ./gradlew/assembleDebug or ./gradlew/assembleRelease

minSdkVersion

Minimum Android SDK version device has to have in order for app to run

multipleAPKs

If set to true, apk will be split into multiple ones for each architecture: "armeabi-v7a", "x86", "arm64-v8a", "x86_64"

aab

If set to true, android project will generate app.aab instead of apk

extraGradleParams

Allows passing extra params to gradle command

minifyEnabled

Sets minifyEnabled buildType property in app/build.gradle

targetSdkVersion

Allows you define custom targetSdkVersion equivalent to: targetSdkVersion = [VERSION] in build.gradle

compileSdkVersion

Allows you define custom compileSdkVersion equivalent to: compileSdkVersion = [VERSION] in build.gradle

kotlinVersion

Allows you define custom kotlin version

ndkVersion

Allows you define custom ndkVersion equivalent to: ndkVersion = [VERSION] in build.gradle

supportLibVersion

Allows you define custom supportLibVersion equivalent to: supportLibVersion = [VERSION] in build.gradle

googleServicesVersion

Allows you define custom googleServicesVersion equivalent to: googleServicesVersion = [VERSION] in build.gradle

gradleBuildToolsVersion

Allows you define custom gradle build tools version equivalent to: classpath 'com.android.tools.build:gradle:[VERSION]'

gradleWrapperVersion

Allows you define custom gradle wrapper version equivalent to: distributionUrl=https\://services.gradle.org/distributions/gradle-[VERSION]-all.zip

excludedFeatures

Override features definitions in AndroidManifest.xml by exclusion

includedFeatures

Override features definitions in AndroidManifest.xml by inclusion

buildToolsVersion

Override android build tools version

disableSigning

storeFile

Name of the store file in android project

keyAlias

Key alias of the store file in android project

newArchEnabled

Enables new arch for android. Default: false

flipperEnabled

Enables flipper for ios. Default: true

reactNativeEngine

Allows you to define specific native render engine to be used

templateAndroid

androidtv

androidwear

firetv

ios (object)

Properties of the ios object:

buildSchemes (object)

includedPermissions

Allows you to include specific permissions by their KEY defined in permissions object. Use: ['*'] to include all

excludedPermissions

Allows you to exclude specific permissions by their KEY defined in permissions object. Use: ['*'] to exclude all

id

Bundle ID of application. ie: com.example.myapp

idSuffix

version

Semver style version of your app

versionCode

Manual verride of generated version code

versionFormat

Allows you to fine-tune app version defined in package.json or renative.json. If you do not define versionFormat, no formatting will apply to version.

versionCodeFormat

Allows you to fine-tune auto generated version codes. Version code is autogenerated from app version defined in package.json or renative.json.

versionCodeOffset

title

Title of your app will be used to create title of the binary. ie App title of installed app iOS/Android app or Tab title of the website

description

General description of your app. This prop will be injected to actual projects where description field is applicable

author

Author name

license

Injects license information into app

includedFonts

Array of fonts you want to include in specific app or scheme. Should use exact font file (without the extension) located in ./appConfigs/base/fonts or * to mark all

backgroundColor

Defines root view backgroundColor for all platforms in HEX format

splashScreen

Enable or disable splash screen

fontSources

Array of paths to location of external Fonts. you can use resolve function here example: {{resolvePackage(react-native-vector-icons)}}/Fonts

assetSources

Array of paths to alternative external assets. this will take priority over ./appConfigs/base/assets folder on your local project. You can use resolve function here example: {{resolvePackage(@flexn/template-starter)}}/appConfigs/base/assets

includedPlugins

Defines an array of all included plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: includedPlugins is evaluated before excludedPlugins. Use: ['*'] to include all

excludedPlugins

Defines an array of all excluded plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: excludedPlugins is evaluated after includedPlugins. Use: ['*'] to exclude all

runtime

custom

extendPlatform

assetFolderPlatform

Alternative platform assets. This is useful for example when you want to use same android assets in androidtv and want to avoid duplicating assets

engine

ID of engine to be used for this platform. Note: engine must be registered in engines field

entryFile

Alternative name of the entry file without .js extension

bundleAssets

If set to true compiled js bundle file will generated. this is needed if you want to make production like builds

enableSourceMaps

If set to true dedicated source map file will be generated alongside of compiled js bundle

bundleIsDev

If set to true debug build will be generated

getJsBundleFile

ignoreWarnings

Injects inhibit_all_warnings into Podfile

ignoreLogs

Passes -quiet to xcodebuild command

deploymentTarget

Deployment target for xcodepoj

orientationSupport

teamID

Apple teamID

excludedArchs

Defines excluded architectures. This transforms to xcodeproj: EXCLUDED_ARCHS="<VAL VAL ...>"

urlScheme

URL Scheme for the app used for deeplinking

teamIdentifier

Apple developer team ID

scheme

schemeTarget

appleId

provisioningStyle

newArchEnabled

Enables new archs for iOS. Default: false

codeSignIdentity

Special property which tells Xcode how to build your project

commandLineArguments

Allows you to pass launch arguments to active scheme

provisionProfileSpecifier

provisionProfileSpecifiers

allowProvisioningUpdates

provisioningProfiles

codeSignIdentities

systemCapabilities

entitlements

runScheme

sdk

testFlightId

firebaseId

privacyManifests

exportOptions

reactNativeEngine

Allows you to define specific native render engine to be used

templateXcode

tvos

tizen (object)

Properties of the tizen object:

buildSchemes (object)

includedPermissions

Allows you to include specific permissions by their KEY defined in permissions object. Use: ['*'] to include all

excludedPermissions

Allows you to exclude specific permissions by their KEY defined in permissions object. Use: ['*'] to exclude all

id

Bundle ID of application. ie: com.example.myapp

idSuffix

version

Semver style version of your app

versionCode

Manual verride of generated version code

versionFormat

Allows you to fine-tune app version defined in package.json or renative.json. If you do not define versionFormat, no formatting will apply to version.

versionCodeFormat

Allows you to fine-tune auto generated version codes. Version code is autogenerated from app version defined in package.json or renative.json.

versionCodeOffset

title

Title of your app will be used to create title of the binary. ie App title of installed app iOS/Android app or Tab title of the website

description

General description of your app. This prop will be injected to actual projects where description field is applicable

author

Author name

license

Injects license information into app

includedFonts

Array of fonts you want to include in specific app or scheme. Should use exact font file (without the extension) located in ./appConfigs/base/fonts or * to mark all

backgroundColor

Defines root view backgroundColor for all platforms in HEX format

splashScreen

Enable or disable splash screen

fontSources

Array of paths to location of external Fonts. you can use resolve function here example: {{resolvePackage(react-native-vector-icons)}}/Fonts

assetSources

Array of paths to alternative external assets. this will take priority over ./appConfigs/base/assets folder on your local project. You can use resolve function here example: {{resolvePackage(@flexn/template-starter)}}/appConfigs/base/assets

includedPlugins

Defines an array of all included plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: includedPlugins is evaluated before excludedPlugins. Use: ['*'] to include all

excludedPlugins

Defines an array of all excluded plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: excludedPlugins is evaluated after includedPlugins. Use: ['*'] to exclude all

runtime

custom

extendPlatform

assetFolderPlatform

Alternative platform assets. This is useful for example when you want to use same android assets in androidtv and want to avoid duplicating assets

engine

ID of engine to be used for this platform. Note: engine must be registered in engines field

entryFile

Alternative name of the entry file without .js extension

bundleAssets

If set to true compiled js bundle file will generated. this is needed if you want to make production like builds

enableSourceMaps

If set to true dedicated source map file will be generated alongside of compiled js bundle

bundleIsDev

If set to true debug build will be generated

getJsBundleFile

package

certificateProfile

appName

timestampBuildFiles

devServerHost

environment

webpackConfig

tizenmobile

tizenwatch

webos (object)

Properties of the webos object:

buildSchemes (object)

includedPermissions

Allows you to include specific permissions by their KEY defined in permissions object. Use: ['*'] to include all

excludedPermissions

Allows you to exclude specific permissions by their KEY defined in permissions object. Use: ['*'] to exclude all

id

Bundle ID of application. ie: com.example.myapp

idSuffix

version

Semver style version of your app

versionCode

Manual verride of generated version code

versionFormat

Allows you to fine-tune app version defined in package.json or renative.json. If you do not define versionFormat, no formatting will apply to version.

versionCodeFormat

Allows you to fine-tune auto generated version codes. Version code is autogenerated from app version defined in package.json or renative.json.

versionCodeOffset

title

Title of your app will be used to create title of the binary. ie App title of installed app iOS/Android app or Tab title of the website

description

General description of your app. This prop will be injected to actual projects where description field is applicable

author

Author name

license

Injects license information into app

includedFonts

Array of fonts you want to include in specific app or scheme. Should use exact font file (without the extension) located in ./appConfigs/base/fonts or * to mark all

backgroundColor

Defines root view backgroundColor for all platforms in HEX format

splashScreen

Enable or disable splash screen

fontSources

Array of paths to location of external Fonts. you can use resolve function here example: {{resolvePackage(react-native-vector-icons)}}/Fonts

assetSources

Array of paths to alternative external assets. this will take priority over ./appConfigs/base/assets folder on your local project. You can use resolve function here example: {{resolvePackage(@flexn/template-starter)}}/appConfigs/base/assets

includedPlugins

Defines an array of all included plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: includedPlugins is evaluated before excludedPlugins. Use: ['*'] to include all

excludedPlugins

Defines an array of all excluded plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: excludedPlugins is evaluated after includedPlugins. Use: ['*'] to exclude all

runtime

custom

extendPlatform

assetFolderPlatform

Alternative platform assets. This is useful for example when you want to use same android assets in androidtv and want to avoid duplicating assets

engine

ID of engine to be used for this platform. Note: engine must be registered in engines field

entryFile

Alternative name of the entry file without .js extension

bundleAssets

If set to true compiled js bundle file will generated. this is needed if you want to make production like builds

enableSourceMaps

If set to true dedicated source map file will be generated alongside of compiled js bundle

bundleIsDev

If set to true debug build will be generated

getJsBundleFile

iconColor

timestampBuildFiles

devServerHost

environment

webpackConfig

web (object)

Properties of the web object:

buildSchemes (object)

includedPermissions

Allows you to include specific permissions by their KEY defined in permissions object. Use: ['*'] to include all

excludedPermissions

Allows you to exclude specific permissions by their KEY defined in permissions object. Use: ['*'] to exclude all

id

Bundle ID of application. ie: com.example.myapp

idSuffix

version

Semver style version of your app

versionCode

Manual verride of generated version code

versionFormat

Allows you to fine-tune app version defined in package.json or renative.json. If you do not define versionFormat, no formatting will apply to version.

versionCodeFormat

Allows you to fine-tune auto generated version codes. Version code is autogenerated from app version defined in package.json or renative.json.

versionCodeOffset

title

Title of your app will be used to create title of the binary. ie App title of installed app iOS/Android app or Tab title of the website

description

General description of your app. This prop will be injected to actual projects where description field is applicable

author

Author name

license

Injects license information into app

includedFonts

Array of fonts you want to include in specific app or scheme. Should use exact font file (without the extension) located in ./appConfigs/base/fonts or * to mark all

backgroundColor

Defines root view backgroundColor for all platforms in HEX format

splashScreen

Enable or disable splash screen

fontSources

Array of paths to location of external Fonts. you can use resolve function here example: {{resolvePackage(react-native-vector-icons)}}/Fonts

assetSources

Array of paths to alternative external assets. this will take priority over ./appConfigs/base/assets folder on your local project. You can use resolve function here example: {{resolvePackage(@flexn/template-starter)}}/appConfigs/base/assets

includedPlugins

Defines an array of all included plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: includedPlugins is evaluated before excludedPlugins. Use: ['*'] to include all

excludedPlugins

Defines an array of all excluded plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: excludedPlugins is evaluated after includedPlugins. Use: ['*'] to exclude all

runtime

custom

extendPlatform

assetFolderPlatform

Alternative platform assets. This is useful for example when you want to use same android assets in androidtv and want to avoid duplicating assets

engine

ID of engine to be used for this platform. Note: engine must be registered in engines field

entryFile

Alternative name of the entry file without .js extension

bundleAssets

If set to true compiled js bundle file will generated. this is needed if you want to make production like builds

enableSourceMaps

If set to true dedicated source map file will be generated alongside of compiled js bundle

bundleIsDev

If set to true debug build will be generated

getJsBundleFile

webpackConfig

pagesDir

Custom pages directory used by nextjs. Use relative paths

outputDir

Custom output directory used by nextjs equivalent to npx next build with custom outputDir. Use relative paths

exportDir

Custom export directory used by nextjs equivalent to npx next export --outdir <exportDir>. Use relative paths

nextTranspileModules

timestampBuildFiles

devServerHost

environment

webtv

chromecast

kaios

macos (object)

Properties of the macos object:

buildSchemes (object)

includedPermissions

Allows you to include specific permissions by their KEY defined in permissions object. Use: ['*'] to include all

excludedPermissions

Allows you to exclude specific permissions by their KEY defined in permissions object. Use: ['*'] to exclude all

id

Bundle ID of application. ie: com.example.myapp

idSuffix

version

Semver style version of your app

versionCode

Manual verride of generated version code

versionFormat

Allows you to fine-tune app version defined in package.json or renative.json. If you do not define versionFormat, no formatting will apply to version.

versionCodeFormat

Allows you to fine-tune auto generated version codes. Version code is autogenerated from app version defined in package.json or renative.json.

versionCodeOffset

title

Title of your app will be used to create title of the binary. ie App title of installed app iOS/Android app or Tab title of the website

description

General description of your app. This prop will be injected to actual projects where description field is applicable

author

Author name

license

Injects license information into app

includedFonts

Array of fonts you want to include in specific app or scheme. Should use exact font file (without the extension) located in ./appConfigs/base/fonts or * to mark all

backgroundColor

Defines root view backgroundColor for all platforms in HEX format

splashScreen

Enable or disable splash screen

fontSources

Array of paths to location of external Fonts. you can use resolve function here example: {{resolvePackage(react-native-vector-icons)}}/Fonts

assetSources

Array of paths to alternative external assets. this will take priority over ./appConfigs/base/assets folder on your local project. You can use resolve function here example: {{resolvePackage(@flexn/template-starter)}}/appConfigs/base/assets

includedPlugins

Defines an array of all included plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: includedPlugins is evaluated before excludedPlugins. Use: ['*'] to include all

excludedPlugins

Defines an array of all excluded plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: excludedPlugins is evaluated after includedPlugins. Use: ['*'] to exclude all

runtime

custom

extendPlatform

assetFolderPlatform

Alternative platform assets. This is useful for example when you want to use same android assets in androidtv and want to avoid duplicating assets

engine

ID of engine to be used for this platform. Note: engine must be registered in engines field

entryFile

Alternative name of the entry file without .js extension

bundleAssets

If set to true compiled js bundle file will generated. this is needed if you want to make production like builds

enableSourceMaps

If set to true dedicated source map file will be generated alongside of compiled js bundle

bundleIsDev

If set to true debug build will be generated

getJsBundleFile

ignoreWarnings

Injects inhibit_all_warnings into Podfile

ignoreLogs

Passes -quiet to xcodebuild command

deploymentTarget

Deployment target for xcodepoj

orientationSupport

teamID

Apple teamID

excludedArchs

Defines excluded architectures. This transforms to xcodeproj: EXCLUDED_ARCHS="<VAL VAL ...>"

urlScheme

URL Scheme for the app used for deeplinking

teamIdentifier

Apple developer team ID

scheme

schemeTarget

appleId

provisioningStyle

newArchEnabled

Enables new archs for iOS. Default: false

codeSignIdentity

Special property which tells Xcode how to build your project

commandLineArguments

Allows you to pass launch arguments to active scheme

provisionProfileSpecifier

provisionProfileSpecifiers

allowProvisioningUpdates

provisioningProfiles

codeSignIdentities

systemCapabilities

entitlements

runScheme

sdk

testFlightId

firebaseId

privacyManifests

exportOptions

reactNativeEngine

Allows you to define specific native render engine to be used

templateXcode

electronConfig

Allows you to configure electron app as per https://www.electron.build/

BrowserWindow

Allows you to configure electron wrapper app window

webpackConfig

linux

windows (object)

Properties of the windows object:

buildSchemes (object)

includedPermissions

Allows you to include specific permissions by their KEY defined in permissions object. Use: ['*'] to include all

excludedPermissions

Allows you to exclude specific permissions by their KEY defined in permissions object. Use: ['*'] to exclude all

id

Bundle ID of application. ie: com.example.myapp

idSuffix

version

Semver style version of your app

versionCode

Manual verride of generated version code

versionFormat

Allows you to fine-tune app version defined in package.json or renative.json. If you do not define versionFormat, no formatting will apply to version.

versionCodeFormat

Allows you to fine-tune auto generated version codes. Version code is autogenerated from app version defined in package.json or renative.json.

versionCodeOffset

title

Title of your app will be used to create title of the binary. ie App title of installed app iOS/Android app or Tab title of the website

description

General description of your app. This prop will be injected to actual projects where description field is applicable

author

Author name

license

Injects license information into app

includedFonts

Array of fonts you want to include in specific app or scheme. Should use exact font file (without the extension) located in ./appConfigs/base/fonts or * to mark all

backgroundColor

Defines root view backgroundColor for all platforms in HEX format

splashScreen

Enable or disable splash screen

fontSources

Array of paths to location of external Fonts. you can use resolve function here example: {{resolvePackage(react-native-vector-icons)}}/Fonts

assetSources

Array of paths to alternative external assets. this will take priority over ./appConfigs/base/assets folder on your local project. You can use resolve function here example: {{resolvePackage(@flexn/template-starter)}}/appConfigs/base/assets

includedPlugins

Defines an array of all included plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: includedPlugins is evaluated before excludedPlugins. Use: ['*'] to include all

excludedPlugins

Defines an array of all excluded plugins for specific config or buildScheme. only full keys as defined in plugin should be used.

NOTE: excludedPlugins is evaluated after includedPlugins. Use: ['*'] to exclude all

runtime

custom

extendPlatform

assetFolderPlatform

Alternative platform assets. This is useful for example when you want to use same android assets in androidtv and want to avoid duplicating assets

engine

ID of engine to be used for this platform. Note: engine must be registered in engines field

entryFile

Alternative name of the entry file without .js extension

bundleAssets

If set to true compiled js bundle file will generated. this is needed if you want to make production like builds

enableSourceMaps

If set to true dedicated source map file will be generated alongside of compiled js bundle

bundleIsDev

If set to true debug build will be generated

getJsBundleFile

electronConfig

Allows you to configure electron app as per https://www.electron.build/

BrowserWindow

Allows you to configure electron wrapper app window

reactNativeEngine

Allows you to define specific native render engine to be used

templateVSProject

webpackConfig

xbox

plugins (object)

Define all plugins available in your project. you can then use includedPlugins and excludedPlugins props to define active and inactive plugins per each app config

templateConfig (object)

Used in renative.template.json allows you to define template behaviour.

Properties of the templateConfig object:

name (string)

version (string)

disabled (boolean)

includedPaths (array)

Defines list of all file/dir paths you want to include in template

The elements of the array must match at least one of the following properties:

(string)

(object)

Properties of the undefined object:

paths (array, required)

The object is an array with all elements of the type string.

engines (array)

The object is an array with all elements of the type string.

platforms

Array list of all supported platforms in current project

renative_json (object)

Properties of the renative_json object:

$schema (string)

extendsTemplate (string)

package_json (object)

Properties of the package_json object:

dependencies (object)

devDependencies

peerDependencies

optionalDependencies

name (string)

version (string)

browserslist