FLUTTER_APP-EXPITO
Expito 是一款使用 Flutter 开发的强大的 AI 驱动型费用跟踪应用。它为用户提供了无缝跟踪收入和支出的方式,通过图表获得可视化洞察,并利用 AI 高效管理财务。
- 星标
- 1
- 复刻
- 0
- 最近推送(UTC)
- 2024年9月12日
- 项目状态
- 未归档
原始 README
以下为英文项目原文快照,最新内容请访问 GitHub。
Expito - Personal Expense Manager
Expito is a powerful, AI-enabled expense tracking app developed using Flutter. It provides users with a seamless way to track their income and expenses, get visual insights through graphs, and use AI to manage their finances efficiently.
Key Features
- Transaction Tracking: Record and view your income and expenses effortlessly.
- Graphical Insights: Visualize your spending and income trends through interactive charts.
- AI Financial Advisor: Receive personalized recommendations on optimizing your budget.
- Hive Local Storage: Securely store transaction data locally using Hive, a high-performance NoSQL database.
- Interactive UI: A modern, responsive interface built using Flutter’s Material Design components.
App Flow
Here is an overview of the user flow in the Expito app:
graph TD;
A[App Launch] --> B{Is Data Initialized?}
B -- Yes --> C[Home Page]
B -- No --> D[Initialize Hive Database]
D --> C
C --> E[Add Transaction]
C --> F[View Spending Graph]
C --> G[View Income Graph]
C --> H[Access AI Advisor]
E --> C
F --> C
G --> C
H --> I[Ask Questions]
I --> C
- The user begins at the Home Page after initializing the Hive database.
- From there, they can add transactions, view graphs, or get AI-based financial insights.
- The AI interface allows users to ask questions about their income, spending trends, and savings suggestions.
Architecture Diagram
The following architecture diagram shows the components and flow of data within the Expito app:
graph LR
A[Flutter Frontend]
B[Hive Database]
C[Transaction Service]
D[Graph Service]
E[AI Service]
A --> B
A --> C
A --> D
A --> E
B --> C
C --> D
C --> E
E --> A
D --> A
Component Breakdown:
- Flutter Frontend: The UI where users interact with the app. It allows transaction input, displays graphs, and interfaces with the AI assistant.
- Hive Database: Stores transaction data locally. Handles the data persistence for income and expenses.
- Transaction Service: Manages all operations related to transactions, such as adding, deleting, and fetching records.
- Graph Service: Processes data to generate spending and income graphs for visual insights.
- AI Service: Connects to Google Generative AI to provide users with tailored financial suggestions based on their data.
Pages Overview
1. Home Page
- Displays the total income and expenses.
- Lists all transactions with descriptions, amounts, and dates.
- Quick access to other app features like adding a transaction, viewing graphs, and interacting with the AI assistant.
2. Graph Pages
- Spending Graph: A bar chart showing monthly expenses. Helps users understand their spending habits and identify areas to reduce costs.
- Income Graph: Visualizes monthly income trends to provide clarity on income sources and amounts.
3. Add Transaction Page
- A form where users can add income or expense transactions, providing descriptions and amounts.
- Users can specify whether the transaction is income or expenditure, and it will be recorded accordingly in the Hive database.
4. AI Assistance Page
- The user can ask questions like:
- “How can I optimize my budget?”
- “Which categories are consuming most of my spend?”
- “What are my largest expenses this month?”
- The AI generates personalized financial insights based on transaction data.
Setup Instructions
Prerequisites
- Flutter SDK installed
- Hive and its Flutter adapters installed
- API key for Google Generative AI
Installation Steps
-
Clone the repository:
git clone https://github.com/kaleharshavardhan07/FLUTTER_APP-EXPITO.git cd expito -
Install dependencies:
flutter pub get -
Set up Hive: Ensure Hive is initialized, and the
transactionsbox is opened in the main file.await Hive.initFlutter(); Hive.registerAdapter(TransactionAdapter()); await Hive.openBox<Transaction>('transactions'); -
Set up AI API: Obtain an API key from Google Generative AI and add it to the
.envfile:API_KEY=your_api_key -
Run the app:
flutter run
Dependencies
- Flutter
- Hive for local storage
- Charts Flutter for visualizing income and spending trends
- Google Generative AI for AI-driven financial suggestions
- Flutter Markdown for displaying AI responses
Future Enhancements
- Multi-currency support and currency conversion.
- Cloud sync options for backup and access across devices.
- Advanced AI-driven financial analytics and recommendations.
License
This project is licensed under the MIT License - see the LICENSE file for details.
分类
使用的依赖
依赖清单 18 项
- flutter
{"sdk":"flutter"} - flutter_dotenv
^5.0.2 - cupertino_icons
^1.0.6 - hive
^2.0.4 - hive_flutter
^1.1.0 - path_provider
^2.0.14 - flutter_launcher_icons
^0.9.2 - intl
^0.17.0 - font_awesome_flutter
^10.0.0 - json_annotation
^4.4.0 - flutter_markdown
^0.6.10 - charts_flutter
{"path":"./charts-master/charts-master/charts_flutter"} - google_generative_ai
^0.4.3 - flutter_test开发依赖
{"sdk":"flutter"} - flutter_lints开发依赖
^3.0.0 - build_runner开发依赖
^2.1.4 - hive_generator开发依赖
^2.0.1 - json_serializable开发依赖
^6.1.1
如何选择适合项目的代码仓?
先按使用场景筛选,再比较项目活跃情况,最后到原始仓库核对使用要求。
- 通过仓库名、作者或描述搜索,再按技术分类缩小范围。
- 结合星标、复刻与最近推送比较项目;星标反映社区关注,不代表质量保证。
- 使用前在 GitHub 核对 README、许可证与 Issues。
来源与维护
“A repository is the most basic element of GitHub.”
GitHub Docs — About repositories ↗