Skip to content

Customization & Configuration ​

TaskFlow is designed to be highly customizable. This guide covers how to change the branding, visuals, AI behavior, and monetization settings.


1. Visual Branding ​

Changing Images ​

Most app images are stored in the assets/img/ folder of the Flutter project.

  • Onboarding Images: assets/img/onboarding/ (onboarding1.png, onboarding2.png, etc.)
  • Profile Placeholders: assets/img/profile/ (profile_1.jpg through profile_8.jpg)
  • App Splash: assets/img/splash.png

TIP

Pro Tip: Keep the same filenames and replace the files directly. If you change filenames, you must update the references in the Dart code.

Changing App Icon ​

  1. Replace assets/img/icon.png with your new 1024x1024px icon.
  2. Run the icon generator:
    bash
    flutter pub run flutter_launcher_icons

Changing UI Icons ​

TaskFlow uses HeroIcons. You can browse more at heroicons.com.

  • To change an icon, search for HeroIcon(HeroIcons.name, ...) and replace name.

2. Colors & Themes ​

TaskFlow uses a centralized theme system in lib/theme/app_theme.dart.

Primary Theme Color ​

Change the seedColor to your brand's primary color:

dart
colorScheme: ColorScheme.fromSeed(
  seedColor: Colors.orange, // Change this
  brightness: Brightness.light,
),

Feature-Specific Colors ​

Modify specific category or priority colors in lib/core/constants/color_constants.dart:

  • workColor: Default is Blue.
  • highPriority: Default is Orange.
  • urgentPriority: Default is Red.

3. Languages & Localization ​

TaskFlow supports English, Spanish, French, German, and Portuguese out of the box.

Modifying Translations ​

  1. Go to lib/l10n/.
  2. Open the file for the language you want to edit (e.g., app_en.dart).
  3. Update the return values for any string:
    dart
    @override
    String get login => 'Sign In'; // Changed from 'Login'

Adding a New Language ​

  1. Create a new file (e.g., app_it.dart for Italian).
  2. Copy the contents of app_en.dart and translate the strings.
  3. Register the new locale in lib/l10n/app_localizations_delegate.dart.

4. AI Configuration ​

Google Gemini API ​

TaskFlow's AI features are powered by Gemini. You do NOT need to update code for this.

  1. Get your API key from Google AI Studio.
  2. Go to your Admin Panel -> Settings -> AI Configuration.
  3. Paste the key and save. The app will fetch it automatically.

AI Feature Flags ​

Enable or disable specific AI tools in lib/core/config/app_config.dart:

dart
static const bool enableAIChatAssistant = true;
static const bool enableAITaskCreator = true;
static const bool enableAIPlanner = true;

5. AdMob Monetization ​

Initial Setup ​

  1. Master Switch: Set enableAds = true in app_config.dart.
  2. Enter your App ID and Unit IDs for Banner and Interstitial ads in the same file.

Platform Configuration ​

  • Android: Update your App ID in android/app/src/main/AndroidManifest.xml.
  • iOS: Update your App ID in ios/Runner/Info.plist.

6. Global Constants ​

Fine-tune your app's behavior in lib/core/constants/app_constants.dart:

  • Task Limits: Max title/description characters.
  • Pomodoro Timer: Default work and break durations.
  • UI Metrics: Padding values, elevation, and border radius.