Skip to content

gowtham2401/PersonalFinanceManager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

💰 Personal Finance Manager

A comprehensive WPF desktop application to help you track income, expenses, and budgets using the MVVM pattern and MariaDB.

image

🚀 Features

📊 Dashboard

  • Summary Cards – Display total income, expense, and balance for the last 6 months
  • 6-Month Expense Limit – Set a custom budget; progress bar turns red when exceeded
  • Persistent limit – Value is saved and restored between sessions

💸 Transactions

  • Add, Edit, Delete transactions
  • Fields: name, amount, type (Income/Expense), category, and date
  • Inline date picker for easy selection
  • Edit mode – “Add” disabled while editing; “Save/Cancel” enabled
  • Real-time updates – List refreshes after each operation

🗂️ Categories

  • Manage categories (add, update, delete)
  • Separate income and expense categories
  • Used by transactions for better organisation

📈 Reports

  • Monthly Summary – Column chart (Income vs Expense)
  • Category Breakdown – Pie chart of spending per category
  • Trends – Line chart of cumulative balance over time
  • Export – Save reports to Excel (.xlsx) or PDF (.pdf)

🗄️ Database

  • MariaDB (MySQL compatible) for persistent storage
  • Entity-free ADO.NET with repository pattern
  • Lightweight and fast data access

🎨 UI/UX

  • Clean modern interface
  • Summary cards and interactive charts
  • Dark/Light theme ready
  • Responsive layouts using Grid and UniformGrid

🧱 Technologies Used

  • .NET Framework 4.8
  • WPF (Windows Presentation Foundation)
  • MVVM Pattern (INotifyPropertyChanged, RelayCommand)
  • LiveCharts – interactive charts
  • EPPlus / ClosedXML – Excel export
  • iTextSharp – PDF export
  • MySql.Data – MariaDB connector
  • Visual Studio 2022

⚙️ Getting Started

✅ Prerequisites

  • Windows 10/11
  • Visual Studio 2022 (or 2019) with .NET desktop development workload
  • MariaDB server (or MySQL) running locally or remotely
  • Git (optional)

🔧 Setup Instructions

1. Clone the repository

###2. Create the database

Run the SQL script in: Db/Finance.sql

This creates: Categories table Transactions table

(Optional) Insert sample data from: Db/Finance.sql

###3. Update connection string

Open App.config and modify the FinanceDB connection string to match your: Server Database User Password

###4. Restore NuGet packages

Visual Studio usually restores automatically. If not: Update-Package -Reinstall

###5. Build and run

Press F5 in Visual Studio.

##🧭 Usage

Dashboard – View financial summary and set 6-month expense limit Transactions – Add, edit, delete transactions using the date picker Categories – Manage categories for better classification Reports – Generate charts and export to Excel or PDF

##📁 Project Structure PersonalFinanceManager/

├── Controls/

Reusable user controls (AddTransaction, SummaryCard, Chart)

├── DataAccess/

Repositories and database helpers

├── Helpers/

RelayCommand, converters, app settings

├── Models/

Transaction, Category

├── Services/

Excel and PDF exporters

├── ViewModels/

Main, Dashboard, Transactions, Reports, Categories

├── Views/

XAML views

├── App.xaml

Application resources and startup

├── App.config

Connection strings and settings

└── README.md
xxxt# Project documentation ##🤝 Contributing

Contributions are welcome!

Fork the project Create your feature branch git checkout -b feature/AmazingFeature Commit your changes git commit -m "Add some amazing feature" Push to the branch git push origin feature/AmazingFeature Open a Pull Request

##📄 License

Distributed under the MIT License. See LICENSE for more information.

##📬 Contact

Gowtham M

Email: gowthamm2424@gmail.com

Project Link: https://github.com/gowtham2401/PersonalFinanceManager

git clone https://github.com/gowtham2401/PersonalFinanceManager.git

About

A modern WPF application designed to efficiently manage personal finances, including income, expenses, and budgeting.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages