>_ BuildaPrompt
TEXT Language selector en

Finance Tracker App Development Plan

Finance Tracker App Development Plan — a ready-to-use text prompt with customizable fields (languages, state_mgmt, app_name, package_name, currency) for Development & Code. Fill in your details and paste into ChatGPT, Claude, or your preferred AI assistant.

How to use it

  1. Fill in languages, state_mgmt, app_name, package_name, currency below (or keep the suggested defaults).
  2. Copy the generated prompt.
  3. Paste it into ChatGPT, Claude, or your preferred AI assistant.

Pairs well with Ethereum Developer — try running them back to back.

Optional: use the “Additional context” field to add extra details, tone, constraints, or background the AI should know about, then include it when you copy the prompt.

Optional: pick a “Prompting Technique” below (Few-shot, Chain-of-Thought, Self-Consistency, Generate Knowledge, Directional Stimulus, Meta Prompting) to wrap this prompt with a proven prompting strategy.

The base prompt

Act as a Senior Flutter Architect + Product Engineer. You have over 10 years of experience building production-grade Flutter apps for Android and iOS, focusing on clean architecture, great UX, strong privacy, and fast iteration.

## Project Overview
Develop a mobile app to display user expenses and investments in one interface. The app should offer a modern, smooth UI, support multiple languages, and be responsive across various phone models. It must load quickly, support dark mode, and allow for future extensibility.

## Non-Negotiables
- **Tech Stack**: Flutter (latest stable) with null-safety.
- **Platform Support**: Android and iOS.
- **Responsive UI**: Adapt to different phone screen sizes.
- **Multi-language Support**: Implement i18n with at least ${languages}.
- **Dark Mode**: Full support.
- **Fast Startup**: Avoid blocking operations on the main isolate; use skeleton loading where necessary.
- **Privacy**: All sensitive data must remain on the device; no server transmission of personal data.

## Monetization Strategy
- Offer premium features via subscription or one-time purchase.
- Include ads as placeholders, easily swappable or removable.

## Optional Features
- Integrate bank API connections for transaction imports while maintaining privacy.
- Implement a modular provider interface with a mock bank provider for development.

## Desired UX/UI
- Smooth, modern UI with Material 3, animations, and charts.
- Key Screens: Dashboard, Expenses, Investments, Settings.
- Offline capability.

## Architecture & Code Quality
- Use Clean Architecture: Presentation, Domain, Data layers.
- Choose a state management tool (${state_mgmt}) and stick with it.
- Use local encrypted storage for sensitive data.
- Basic analytics should be opt-in, privacy-safe.
- Enable export/import functionality (CSV/JSON).

## Output Requirements
Deliver the project in incremental steps using "vibe coding."

### Step 0 — Plan
- Outline the project plan and folder structure.
- List dependencies and their purposes.
- Detail platform configurations for Android and iOS.

### Step 1 — Bootstrap App
- Provide commands to create the project.
- List pubspec.yaml dependencies.
- Implement routing, theming, and localization scaffolding.

### Step 2 — Local Data Layer
- Set up local storage for transactions and investments.
- Develop entities, repositories, and CRUD use cases.

### Step 3 — Dashboard + Charts
- Develop dashboard with data aggregation and charts.

### Step 4 — Premium + Ads
- Scaffold subscription features and ad placeholders.

### Step 5 — Bank Provider Interface
- Implement a mock bank provider and sync functionality.

## Coding Guidelines
- Keep code files small and focused with clear comments.
- Provide "How to run" instructions after each step.
- List any external tools/plugins used with details.

## MVP Constraints
- Start with a lean MVP; avoid overengineering.
- No backend server required.
- Avoid legal/financial claims.

## Variables
- **App Name**: ${app_name}
- **Package Name**: ${package_name}
- **Languages**: ${languages}
- **Currency Default**: ${currency}
- **State Management**: ${state_mgmt}

Want it filled in and enhanced? Use the builder →

Related prompts