Watch And Earn docs
v3.0.0
Live demoConsole demo Get help
● Set up · Make it yours

Rebranding
name, ids, icon, colour.

Some branding lives in the console and changes without a build. The application id, the store name and the icon live in the project files and need a new build.

com.yourcompany.watchandearn

01In the console (no new build)

Console → BrandDefaultWhere it shows
Product nameWatch And EarnThe name inside the app (sign-in screen, titles).
Accent colour#EC4899 (pink)The app's colour scheme in light and dark mode is generated from it (app/lib/core/theme.dart).
Support emailemptyThe contact shown in the app.
Name of the pointspointsWhat the app calls its points, e.g. coins or stars.

Legal page URLs and the points notice are under Legal. The app listens to config/public live, so changes appear within seconds.

02Application id and bundle id

Required before release

The package uses the placeholder com.yourcompany.watchandearn. Pick your own reverse-domain id once; the stores never let you change it after the first upload.

  1. AndroidIn app/android/app/build.gradle.kts change both namespace and applicationId. Move app/android/app/src/main/kotlin/com/yourcompany/watchandearn/MainActivity.kt to the matching folder and change its package line.
  2. iOSOpen app/ios/Runner.xcworkspace in Xcode → Runner target → General → Bundle Identifier. This updates PRODUCT_BUNDLE_IDENTIFIER in project.pbxproj (also change the RunnerTests target).
  3. FirebaseRun flutterfire configure again in app/ so Firebase knows the new ids.
  4. ConsoleSubscriptions and purchases → Android package name and iOS bundle id, if you sell VIP or remove-ads.

Find every remaining occurrence:

grep -rn "com.yourcompany.watchandearn" app/android app/ios

03App name on the home screen

PlatformFileKey
Androidapp/android/app/src/main/AndroidManifest.xmlandroid:label
iOSapp/ios/Runner/Info.plistCFBundleDisplayName and CFBundleName
Web demoapp/web/index.html, app/web/manifest.json<title>, meta tags, name, short_name

04App icon and splash

The icons are plain image files; no icon generator is included.

PlatformWhere
Source imageapp/assets/brand/logo-1024.png (1024×1024)
Androidapp/android/app/src/main/res/mipmap-*/ic_launcher.png
iOSapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/
Webapp/web/icons/ and app/web/favicon.png
SplashAndroid res/drawable*/launch_background.xml, iOS Runner/Base.lproj/LaunchScreen.storyboard

The quickest way is the flutter_launcher_icons package from pub.dev: add it as a dev dependency, point it at your 1024×1024 image and run dart run flutter_launcher_icons. Follow that package's own instructions.

05Texts and translations

Every text the user sees is in app/lib/l10n/app_en.arb (English). Edit the values, keep the keys. Flutter regenerates app_localizations*.dart on the next flutter pub get or build (generate: true in pubspec.yaml, settings in app/l10n.yaml).

To add a language, copy the file to app_<code>.arb (for example app_de.arb), translate the values and rebuild. Keep the points notice's meaning in every language: points have no cash value.

06Colours beyond the accent

Design tokens (the violet of the gradient, surfaces) are in app/lib/core/theme.dart. Users can choose light, dark or system theme in the app's settings.