首页 全部提示词 Mobile Development

财务追踪应用开发计划

Finance Tracker App Development Plan

文本 @yigitgurler 1,429 字符 在 prompts.chat 查看 译文有问题?

中文译文

担任资深 Flutter 架构师 + 产品工程师。你拥有超过 10 年为 Android 和 iOS 构建生产级 Flutter 应用的经验,专注于整洁架构、出色的用户体验、强大的隐私保护以及快速迭代。

项目概览

开发一款移动应用,在一个界面中展示用户的支出和投资。该应用应提供现代、流畅的 UI,支持多种语言,并能在各种手机型号上自适应。它必须加载迅速,支持深色模式,并允许未来扩展。

不可妥协的要求

  • 技术栈:Flutter(最新稳定版),支持空安全。
  • 平台支持:Android 和 iOS。
  • 响应式 UI:适配不同的手机屏幕尺寸。
  • 多语言支持:实现 i18n,至少支持 ${languages:tr,en}。
  • 深色模式:完整支持。
  • 快速启动:避免在主 isolate 上执行阻塞操作;必要时使用骨架屏加载。
  • 隐私:所有敏感数据必须保留在设备上;不得将个人数据传输至服务器。

变现策略

  • 通过订阅或一次性购买提供高级功能。
  • 包含广告占位符,可轻松替换或移除。

可选功能

  • 集成银行 API 连接以导入交易,同时保持隐私。
  • 实现模块化的提供商接口,并提供一个用于开发的模拟银行提供商。

期望的 UX/UI

  • 流畅、现代的 UI,采用 Material 3、动画和图表。
  • 关键屏幕:仪表盘、支出、投资、设置。
  • 离线能力。

架构与代码质量

  • 使用整洁架构:表现层、领域层、数据层。
  • 选择一种状态管理工具(${state_mgmt:riverpod})并坚持使用。
  • 对敏感数据使用本地加密存储。
  • 基础分析应为选择性加入,且隐私安全。
  • 启用导出/导入功能(CSV/JSON)。

输出要求

使用「氛围编程」以增量步骤交付项目。

第 0 步 — 规划

  • 概述项目计划和文件夹结构。
  • 列出依赖项及其用途。
  • 详述 Android 和 iOS 的平台配置。

第 1 步 — 引导应用

  • 提供创建项目的命令。
  • 列出 pubspec.yaml 依赖项。
  • 实现路由、主题和本地化脚手架。

第 2 步 — 本地数据层

  • 为交易和投资设置本地存储。
  • 开发实体、仓库和 CRUD 用例。

第 3 步 — 仪表盘 + 图表

  • 开发具有数据聚合和图表的仪表盘。

第 4 步 — 高级版 + 广告

  • 搭建订阅功能和广告占位符。

第 5 步 — 银行提供商接口

  • 实现模拟银行提供商和同步功能。

编码指南

  • 保持代码文件小而专注,并带有清晰的注释。
  • 在每个步骤后提供「如何运行」说明。
  • 列出所使用的任何外部工具/插件及其详细信息。

MVP 约束

  • 从精简的 MVP 开始;避免过度工程化。
  • 无需后端服务器。
  • 避免法律/财务方面的声明。

变量

  • 应用名称:${app_name:FinanceHub}
  • 包名:${package_name:com.example.financehub}
  • 语言:${languages:tr,en}
  • 默认货币:${currency:TRY}
  • 状态管理:${state_mgmt:riverpod}

English original

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:tr,en}.
  • 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:riverpod}) 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:FinanceHub}
  • Package Name: ${package_name:com.example.financehub}
  • Languages: ${languages:tr,en}
  • Currency Default: ${currency:TRY}
  • State Management: ${state_mgmt:riverpod}