Utilisation

Fail builds on a fallback

tsx
import type { KuitoConfig } from 'kuito/config';

export default {
  name: 'MyApp',
  ios: { bundleIdentifier: 'com.example.myapp' },
  android: { applicationId: 'com.example.myapp' },
  strict: true,
} satisfies KuitoConfig;

Déclaration du type

ts
export interface KuitoConfig extends Settings {
  environments?: Record<string, Environment>;
  /**
   * The database's migrations, oldest first. Each applies once, in order, when
   * the app first opens the database; append new ones and never edit one that
   * shipped. Every environment shares them.
   */
  migrations?: Migration[];
}

Membres 20

NomTypeRequisDescription
environmentsRecord<string, Environment>Non—
migrationsMigration[]NonThe database's migrations, oldest first. Each applies once, in order, when the app first opens the database; append new ones and never edit one that shipped. Every environment shares them.
namestringOuiShown under the app icon.
versionstringNonWhat users see: up to three numbers, like 1.2.0. Defaults to 1.0.0.
buildNumbernumberNonWhat the stores order builds by; raise it for every upload. Defaults to 1.
iconstringNonA square PNG of at least 1024×1024, relative to kuito.config.ts.
orientationOrientationNonThe orientations the app runs in. default follows the device.
colorSchemeColorSchemeNonlight or dark ignores the system setting, as CSS's color-scheme.
backgroundColorstringNonThe root window's color, behind the app, like #1E88E5.
statusBar{ style?: StatusBarStyle; hidden?: boolean;}NonThe status bar at launch; SystemBars changes it at run time.
urlSchemesstring[]NonSchemes that open the app, like myapp for myapp://show/42 (docs/linking.md).
linkDomainsstring[]NonWeb domains whose https links open the app, like example.com: universal links on iOS, verified app links on Android (docs/linking.md).
ios{ bundleIdentifier: string; icon?: { light?: string; dark?: string; tinted?: string; }; supportsTablet?: boolean; requiresFullScreen?: boolean; deploymentTarget?: string; teamId?: string; associatedDomains?: string[]; pushEnvironment?: PushEnvironment; backgroundModes?: IOSBackgroundMode[]; infoPlist?: PlistDictionary; entitlements?: PlistDictionary;}Oui—
android{ applicationId: string; adaptiveIcon?: { foreground?: string; background?: string; monochrome?: string; }; softInputMode?: SoftInputMode; minSdk?: number; signing?: { keystore?: string; keyAlias?: string; }; manifest?: AndroidManifestSettings; theme?: Record<string, string>;}Oui—
permissionsKuitoPermissionsNonThe permissions the app asks for (docs/permissions.md); none when absent.
backgroundTasksstring[]NonNames of the tasks the OS may run in the background (docs/background-tasks.md). An environment's list replaces this one.
fonts(string | KuitoFont)[]Non.ttf and .otf files fontFamily takes (docs/fonts.md), relative to kuito.config.ts. Each file's family, weight and style are read from it; an object sets them instead.
splashKuitoSplashNonThe launch screen, and the view the app hands off from (docs/splash.md).
updates{ url: string; publicKey: string;}NonOver-the-air updates of a release build (docs/updates.md): where its shell looks for them, and the key their signatures are checked with. Absent, a release build takes none.
strictbooleanNonCode that reads or moves what lives on the UI thread but has to run on the JS thread fails the build, instead of showing in the placement report (docs/placement.md). Defaults to false.
statusBar — champs imbriqués

statusBar champs

NomTypeRequisDescription
styleStatusBarStyleNonThe color of its content: light for dark backgrounds. auto follows the color scheme.
hiddenbooleanNon—
ios — champs imbriqués

ios champs

NomTypeRequisDescription
bundleIdentifierstringOui—
icon{ light?: string; dark?: string; tinted?: string;}Nonlight replaces icon on iOS; dark and tinted are its iOS 18 appearances.
supportsTabletbooleanNonRuns on iPad too. Defaults to true.
requiresFullScreenbooleanNonOpts out of iPad multitasking (UIRequiresFullScreen).
deploymentTargetstringNonThe oldest iOS the app runs on, 16.0 or later.
teamIdstringNonThe Apple Developer Team ID an iPhone build signs with, like A1B2C3D4E5 (docs/cli.md#release-builds). Simulator builds need none.
associatedDomainsstring[]NonLike applinks:example.com, for universal links.
pushEnvironment"development" | "production"NonThe APNs environment remote push uses: the aps-environment entitlement (docs/notifications.md#remote-push). Absent, the app receives no push.
backgroundModes("location" | "audio" | "voip" | "fetch" | "remote-notification" | "processing" | "external-accessory" | "bluetooth-central" | "bluetooth-peripheral" | "nearby-interaction" | "push-to-talk")[]Non—
infoPlistPlistDictionaryNonMerged into the generated Info.plist.
entitlementsPlistDictionaryNonMerged into the generated entitlements.
icon — champs imbriqués

icon champs

NomTypeRequisDescription
lightstringNon—
darkstringNon—
tintedstringNon—
android — champs imbriqués

android champs

NomTypeRequisDescription
applicationIdstringOui—
adaptiveIcon{ foreground?: string; background?: string; monochrome?: string;}NonLayers of the 108dp adaptive icon; without one, icon fills its visible 72dp.
softInputModeSoftInputModeNonWhat the window does for the keyboard. Defaults to resize (docs/apps.md).
minSdknumberNonThe oldest Android API level the app runs on, 26 or later.
signing{ keystore?: string; keyAlias?: string;}NonThe upload key a release build signs with (docs/cli.md#signing): a keystore relative to kuito.config.ts and its alias. Its passwords come from the environment only.
manifestAndroidManifestSettingsNonAdditions to the generated AndroidManifest.xml, as data.
themeRecord<string, string>NonItems of the app's theme, AppTheme, by name.
adaptiveIcon — champs imbriqués

adaptiveIcon champs

NomTypeRequisDescription
foregroundstringNon—
backgroundstringNonA color like #1E88E5, or an image.
monochromestringNonThe single-color layer of Android 13's themed icons.
signing — champs imbriqués

signing champs

NomTypeRequisDescription
keystorestringNon—
keyAliasstringNon—
updates — champs imbriqués

updates champs

NomTypeRequisDescription
urlstringOuiAn https URL the output of kuito update build is uploaded to.
publicKeystringOuiThe public key kuito update key printed; its private half never goes here.
Généré depuis les déclarations TypeScript publiques : signatures, props et valeurs par défaut viennent de la source vérifiée, les descriptions de sa JSDoc. Aucune valeur par défaut n'est inventée.