● Set up · Make it yours
Rebranding
name, logo, colours, IDs.
What you can change live from the admin, and the one-time checklist for what is compiled into the app. Do this before your first store upload; bundle IDs are hard to change once an app is live.
01Live settings vs. build settings
| Change live (admin, no new build) | Needs a new build |
|---|---|
| App name and tagline inside the app, primary colour, logo URL, About text, swap disclaimer, social and store links, support email, terms and privacy URLs, the "Powered by" switch. | Bundle / application ID, the name under the icon, app icon, splash screen, background colours, fonts, deep-link scheme, kAdminConfigUrl, .env keys. |
The primary colour from Admin → Branding recolours the whole app at runtime. The compiled default is _defaultPrimary in lib/ui_kit/colors.dart.
02Bundle IDs
The package uses com.superwallet.app. Pick your own reverse-domain ID, for example com.yourcompany.wallet, and use the same ID on iOS and Android — the backend uses ANDROID_PACKAGE_NAME for both stores.
| Platform | File | What to change |
|---|---|---|
| iOS | ios/Runner.xcodeproj/project.pbxproj | PRODUCT_BUNDLE_IDENTIFIER (three configurations, plus .RunnerTests). Easiest in Xcode: ios/Runner.xcworkspace → Runner → Signing & Capabilities. |
| iOS | ios/Runner/Runner.entitlements, Runner.debug.entitlements | The keychain group ending in com.superwallet.app. |
| Android | android/app/build.gradle.kts | namespace and applicationId. |
| Android | android/app/src/main/kotlin/com/superwallet/app/MainActivity.kt | Move it to a folder matching your ID and change the package line. |
| Backend | functions/.env | ANDROID_PACKAGE_NAME |
cd crypto_wallet
flutterfire configure --platforms=ios,android,web # register the new IDs
flutter clean
flutter pub get
03App name
| Where | File | Key |
|---|---|---|
| iOS home screen | ios/Runner/Info.plist | CFBundleDisplayName, CFBundleName, and the permission texts that mention the old name |
| Android launcher | android/app/src/main/AndroidManifest.xml | android:label |
| Web | web/index.html, web/manifest.json | <title>, apple-mobile-web-app-title, name, short_name |
| Inside the app | Admin → Branding | App Name (live) |
| Admin panel | crypto_wallet_admin/web/index.html, lib/screens/login_screen.dart, lib/screens/dashboard/dashboard_screen.dart | Page title and header text |
| Authenticator label | functions/.env | APP_NAME |
A few fallback texts in lib/ still say "Super Wallet" until your config loads. Search the project for Super Wallet and SuperWallet.
04Logo and app icons
- Replace the master imageOverwrite
crypto_wallet/assets/images/app_icon_1024.pngwith your 1024 × 1024 PNG (no transparency for iOS). - Set the icon colours
pubspec.yaml→flutter_launcher_icons:adaptive_icon_background(Android) and the webbackground_color/theme_color. - Generate every size
cd crypto_wallet dart run flutter_launcher_icons - Admin panelReplace
crypto_wallet_admin/assets/images/app_icon_1024.pngandlogo.svg. - Logo inside the appAdmin → Branding → Logo URL (an HTTPS image), then publish.
05Colours, splash and fonts
- Primary colour: Admin → Branding (live).
- Backgrounds, surfaces, text: constants in
lib/ui_kit/colors.dart. - Splash: Android
android/app/src/main/res/values/colors.xml(splash_background); iOSios/Runner/Assets.xcassets/LaunchImage.imageset/andLaunchScreen.storyboard; webbackground_colorinweb/manifest.json. Use the same colour asbgincolors.dartto avoid a flash. - Font: Inter, bundled in
assets/fonts/and declared inpubspec.yaml. - Deep-link scheme (optional):
superevmwalletinInfo.plist,AndroidManifest.xmlandlib/core/deep_links/deep_link_router.dart. Keep the standardwc,ethereum,bitcoin,solanaschemes.
06Rebrand checklist
- Same bundle / application ID on iOS and Android;
MainActivity.ktmoved. flutterfire configurerun again after the ID change.- App name changed on every platform and in the admin title.
- Icons replaced and
dart run flutter_launcher_iconsrun. - Splash colour and image replaced.
kAdminConfigUrlpoints at your admin (how).- Store product IDs are your own (
IAP_PRO_WEEKLY_ID,PRO_WEEKLY_PRODUCT_ID). APP_NAMEandANDROID_PACKAGE_NAMEset, functions redeployed.- Admin → Branding filled in and published.
SECURITY.mdcontact address replaced with yours.