Skip to main content

⚙️ 3. Config

Configuration File

To configure Sherlo, create a sherlo.config.json file at the root of your project.

sherlo.config.json
{
"token": "PROJECT_TOKEN", // "Qak6POAjBpoNhnS9RKqP_wR4Mt_2lnVLLTDyu0H-1"
"android": "BUILD_PATH", // "builds/testing/android.apk"
"ios": "BUILD_PATH", // "builds/testing/ios.tar.gz"
"devices": [
{
"id": "DEVICE_ID", // "iphone.15.pro"
"osVersion": "OS_VERSION", // "17"
"osTheme": "OPTIONAL_OS_THEME", // "light"
"osLocale": "OPTIONAL_OS_LOCALE" // "en_US"
}
]
}

Properties

CLI Flags

note

* - the token, android, and ios properties can be defined through flags (--token, --android, --ios) in the Sherlo script instead of the config file.

Token*

The token is a unique key that authenticates your project with Sherlo.

info

To get a token, create a new project or reset the current token in the Sherlo web application.

sherlo.config.json
{
"token": "PROJECT_TOKEN", // "Qak6POAjBpoNhnS9RKqP_wR4Mt_2lnVLLTDyu0H-1"
// ...
}

Android*

The android property specifies the path to the Android build.

It accepts .apk file format.

note

You can skip this property if you are building remotely on Expo servers. Sherlo will retrieve it automatically.

sherlo.config.json
{
"android": "BUILD_PATH" // "builds/testing/android.apk"
// ...
}

iOS*

The ios property specifies the path to the iOS build.

It accepts .app, or .tar.gz/.tar file format (as produced by Expo).

note

You can skip this property if you are building remotely on Expo servers. Sherlo will retrieve it automatically.

sherlo.config.json
{
"ios": "BUILD_PATH" // "builds/testing/ios.tar.gz"
// ...
}

Devices

The devices array specifies the configurations for testing devices.

Each device includes:

  • id - unique device identifier
  • osVersion - operating system version
  • osTheme (default: light) - operating system theme (light or dark)
  • osLocale (default: en_US) - operating system locale (language_COUNTRY format)
info

Refer to the devices page for a list of valid id and osVersion values.

sherlo.config.json
{
"devices": [
{
"id": "DEVICE_ID", // "iphone.15.pro"
"osVersion": "OS_VERSION", // "17"
"osTheme": "OPTIONAL_OS_THEME", // "light"
"osLocale": "OPTIONAL_OS_LOCALE" // "en_US"
},
// ...
],
// ...
}