Verwendung

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;

Typdeklaration

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[];
}

Mitglieder 20

NameTypErforderlichBeschreibung
environmentsRecord<string, Environment>Nein—
migrationsMigration[]NeinThe 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.
namestringJaShown under the app icon.
versionstringNeinWhat users see: up to three numbers, like 1.2.0. Defaults to 1.0.0.
buildNumbernumberNeinWhat the stores order builds by; raise it for every upload. Defaults to 1.
iconstringNeinA square PNG of at least 1024×1024, relative to kuito.config.ts.
orientationOrientationNeinThe orientations the app runs in. default follows the device.
colorSchemeColorSchemeNeinlight or dark ignores the system setting, as CSS's color-scheme.
backgroundColorstringNeinThe root window's color, behind the app, like #1E88E5.
statusBar{ style?: StatusBarStyle; hidden?: boolean;}NeinThe status bar at launch; SystemBars changes it at run time.
urlSchemesstring[]NeinSchemes that open the app, like myapp for myapp://show/42 (docs/linking.md).
linkDomainsstring[]NeinWeb 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;}Ja—
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>;}Ja—
permissionsKuitoPermissionsNeinThe permissions the app asks for (docs/permissions.md); none when absent.
backgroundTasksstring[]NeinNames of the tasks the OS may run in the background (docs/background-tasks.md). An environment's list replaces this one.
fonts(string | KuitoFont)[]Nein.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.
splashKuitoSplashNeinThe launch screen, and the view the app hands off from (docs/splash.md).
updates{ url: string; publicKey: string;}NeinOver-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.
strictbooleanNeinCode 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 — verschachtelte Felder

statusBar Felder

NameTypErforderlichBeschreibung
styleStatusBarStyleNeinThe color of its content: light for dark backgrounds. auto follows the color scheme.
hiddenbooleanNein—
ios — verschachtelte Felder

ios Felder

NameTypErforderlichBeschreibung
bundleIdentifierstringJa—
icon{ light?: string; dark?: string; tinted?: string;}Neinlight replaces icon on iOS; dark and tinted are its iOS 18 appearances.
supportsTabletbooleanNeinRuns on iPad too. Defaults to true.
requiresFullScreenbooleanNeinOpts out of iPad multitasking (UIRequiresFullScreen).
deploymentTargetstringNeinThe oldest iOS the app runs on, 16.0 or later.
teamIdstringNeinThe Apple Developer Team ID an iPhone build signs with, like A1B2C3D4E5 (docs/cli.md#release-builds). Simulator builds need none.
associatedDomainsstring[]NeinLike applinks:example.com, for universal links.
pushEnvironment"development" | "production"NeinThe 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")[]Nein—
infoPlistPlistDictionaryNeinMerged into the generated Info.plist.
entitlementsPlistDictionaryNeinMerged into the generated entitlements.
icon — verschachtelte Felder

icon Felder

NameTypErforderlichBeschreibung
lightstringNein—
darkstringNein—
tintedstringNein—
android — verschachtelte Felder

android Felder

NameTypErforderlichBeschreibung
applicationIdstringJa—
adaptiveIcon{ foreground?: string; background?: string; monochrome?: string;}NeinLayers of the 108dp adaptive icon; without one, icon fills its visible 72dp.
softInputModeSoftInputModeNeinWhat the window does for the keyboard. Defaults to resize (docs/apps.md).
minSdknumberNeinThe oldest Android API level the app runs on, 26 or later.
signing{ keystore?: string; keyAlias?: string;}NeinThe 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.
manifestAndroidManifestSettingsNeinAdditions to the generated AndroidManifest.xml, as data.
themeRecord<string, string>NeinItems of the app's theme, AppTheme, by name.
adaptiveIcon — verschachtelte Felder

adaptiveIcon Felder

NameTypErforderlichBeschreibung
foregroundstringNein—
backgroundstringNeinA color like #1E88E5, or an image.
monochromestringNeinThe single-color layer of Android 13's themed icons.
signing — verschachtelte Felder

signing Felder

NameTypErforderlichBeschreibung
keystorestringNein—
keyAliasstringNein—
updates — verschachtelte Felder

updates Felder

NameTypErforderlichBeschreibung
urlstringJaAn https URL the output of kuito update build is uploaded to.
publicKeystringJaThe public key kuito update key printed; its private half never goes here.
Generiert aus den öffentlichen TypeScript-Deklarationen: Signaturen, Props und Standardwerte stammen aus der geprüften Quelle, Beschreibungen aus deren JSDoc. Kein Standardwert ist erfunden.