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.