Skip to main content
Expo reads branding assets from apps/mobile/app.json. amisi.config.json also stores three branding paths for the Configurator, but the running Expo build uses app.json.

Current branding fields

Store app assets under apps/mobile/assets/images/ and use paths relative to apps/mobile/app.json, such as ./assets/images/icon.png.

Configure assets manually

apps/mobile/app.json
Use a 1024×1024 PNG for the store icon. Avoid transparency in the iOS icon. Keep important Android foreground artwork inside the adaptive-icon safe area. Android 12 and later render the native splash artwork as a centered icon, so use a square transparent image with contain and a solid background color. Full-screen cover artwork and enableFullScreenImage_legacy apply to iOS only; test the iOS image on several aspect ratios. If you maintain amisi.config.json manually, keep its optional icon, adaptiveIconForeground, and splash paths aligned with app.json.

Use the Configurator

Start the local UI:
In App, you can edit branding paths or upload icon, adaptive foreground, and splash files. Uploads are copied without resizing or format conversion to timestamped files in apps/mobile/assets/images/. They update the in-memory app.json; click Plan to inspect the diff and Apply to write it.
The App workflow writes only apps/mobile/app.json. The Theme workflow can write amisi.config.json and .env.example. Uploading a file does not update amisi.config.json, create dark splash variants, or optimize the image.

Rebuild and test

App icons, adaptive icons, and native splash configuration require a new native build:
If an installed icon remains cached, uninstall the app from the simulator or device before reinstalling. Use bun run clear only when a clean native regeneration is necessary. Official references:

Next steps