https://github.com/abdelrahman822000/personal-finance-tracker
A console-based application designed to help users manage their financial transactions, view summaries, and analyze spending habits.
https://github.com/abdelrahman822000/personal-finance-tracker
cpp finance-tracker
Last synced: 4 days ago
JSON representation
A console-based application designed to help users manage their financial transactions, view summaries, and analyze spending habits.
- Host: GitHub
- URL: https://github.com/abdelrahman822000/personal-finance-tracker
- Owner: Abdelrahman822000
- License: gpl-3.0
- Created: 2024-08-28T20:43:17.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-09-17T11:54:00.000Z (about 1 year ago)
- Last Synced: 2025-03-02T03:14:29.647Z (9 months ago)
- Topics: cpp, finance-tracker
- Language: C++
- Homepage:
- Size: 71.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
**This Project was developed by Abdelrahman Mohamed Hamad**
# Personal Finance Tracker
A console-based application designed to help users manage their financial transactions, view summaries, and analyze spending habits.
## Table of Contents
- [Project Description](#project-description)
- [Features](#features)
- [Installation](#installation)
- [Usage](#usage)
- [License](#license)
- [Contact](#contact)
## Project Description
The Personal Finance Tracker is a C++ console application that allows users to input, view, and analyze their financial transactions. Users can record new transactions, view and sort them, get a summary of their finances, and receive insights into their spending by category.
## Features
- **Input Transactions:** Record new financial transactions with description, amount, and category.
- **View Transactions:** Display a list of all transactions with optional sorting by amount.
- **View Summary:** Show a financial summary including total income, total expenses, and balance.
- **Get Insights:** Analyze spending by category and see how each category impacts overall expenses.
## Installation
### Prerequisites
- C++ Compiler (e.g., GCC, Clang, MSVC)
- CMake (Optional, for building the project)
### Steps
1. **Clone the repository:**
```bash
git clone https://github.com/Abdelrahman822000/Personal-Finance-Tracker.git
cd Personal-Finance-Tracker
```
2. **Build the project:**
```bash
g++ main.cpp operations.cpp transactions.cpp -o FinanceTracker.exe
```
3. **Run the Program:**
```bash
./FinanceTracker.exe
```
## Usage
### Running the Application
1. **Start the Application:**
- After running the `FinanceTracker.exe` executable, follow the on-screen instructions to manage your financial transactions.
- Choose actions from the menu to input transactions, view transactions, get a summary, or analyze spending insights.
2. **Menu Options:**
- **Input Transactions:** Select this option to record a new transaction. Enter the description, amount, and category.
- **View Transactions:** Display all transactions and choose to sort them by amount if desired.
- **View Summary:** Check the summary of total income, expenses, and balance.
- **Get Insights:** Analyze spending by category and review how much is spent in each category.
### Example Output
```
Personal Finance Tracker
1. Input Transaction
2. View Transactions
3. View Summary
4. Get Insights
5. Exit
Choose an option: 1
Enter transaction description: Work Salary
Enter transaction amount (positive for income, negative for expense): 5000
Enter category (e.g., Food, Entertainment, Bills): Salary
1. Input Transaction
2. View Transactions
3. View Summary
4. Get Insights
5. Exit
Choose an option: 1
Enter transaction description: Food
Enter transaction amount (positive for income, negative for expense): -400
Enter category (e.g., Food, Entertainment, Bills): Food
1. Input Transaction
2. View Transactions
3. View Summary
4. Get Insights
5. Exit
Choose an option: 1
Enter transaction description: Water Bill
Enter transaction amount (positive for income, negative for expense): -300
Enter category (e.g., Food, Entertainment, Bills): Bills
1. Input Transaction
2. View Transactions
3. View Summary
4. Get Insights
5. Exit
Choose an option: 1
Enter transaction description: Gym Subscription
Enter transaction amount (positive for income, negative for expense): -600
Enter category (e.g., Food, Entertainment, Bills): Bills
1. Input Transaction
2. View Transactions
3. View Summary
4. Get Insights
5. Exit
Choose an option: 2
All Transactions:
Description Amount Category
----------------------------------------------
Work Salary 5000 Salary
Food -400 Food
Water Bill -300 Bills
Gym Subscription -600 Bills
Do you want to sort transactions by amount? (y/n): y
Transactions sorted by amount (low to high).
All Transactions:
Description Amount Category
----------------------------------------------
Gym Subscription -600 Bills
Food -400 Food
Water Bill -300 Bills
Work Salary 5000 Salary
1. Input Transaction
2. View Transactions
3. View Summary
4. Get Insights
5. Exit
Choose an option: 3
Summary:
Total Income: 5000
Total Expenses: -1300
Balance: 3700
1. Input Transaction
2. View Transactions
3. View Summary
4. Get Insights
Choose an option: 4
Spending Insights:
Total Expenses: 1300
Category: Bills - Spent: 900 (69.2308% of total)
Category: Food - Spent: 400 (30.7692% of total)
1. Input Transaction
2. View Transactions
3. View Summary
4. Get Insights
5. Exit
Choose an option: 5
Exiting the program. Goodbye!
```
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Contact
If you have any questions, feel free to contact me:
- **Phone:** +201028325749
- **Email:** a.mohamed822000@gmail.com
- **LinkedIn:** [Abdelrahman Mohamed Hamad](https://www.linkedin.com/in/abdelrahman-mohamed-a1956b247/)