diff --git a/README.md b/README.md new file mode 100644 index 0000000..9daff62 --- /dev/null +++ b/README.md @@ -0,0 +1,13 @@ +# 💰 Personal Finance Tracker + +## 🌟 Overview +This project is a comprehensive Personal Finance Tracker designed to help me manage my income and expenses effectively. Built with Java and Spring Boot, it offers a robust backend with a responsive frontend powered by Thymeleaf and Bootstrap. + +### Key Features +- **Dashboard Overview**: Get a snapshot of your current financial health, including total balance, income, and expenses. +- **Transaction Management**: Easily add, edit, and delete income and expense records with categorization. +- **Visual Analytics**: Interactive charts powered by Chart.js to visualize spending habits and trends over time. +- **Responsive Design**: A clean, mobile-friendly interface built with Bootstrap 5. + +--- +*Empowering you to take control of your financial future.* diff --git a/documentation.md b/documentation.md new file mode 100644 index 0000000..fab0b90 --- /dev/null +++ b/documentation.md @@ -0,0 +1,15 @@ +# 📖 Documentation + +## Project Structure +The project follows a standard Spring Boot application structure: +- `src/main/java/com/example/FinanceTracker`: Root package. + - `Controllers`: Contains Spring MVC controllers for handling dashboard views, transaction forms, and API endpoints. + - `Services`: Houses business logic, such as processing transactions, calculating budget totals, and generating chart data. + - `Repositories`: Interfaces for database access and data persistence. + - `Entities`: JPA entities representing database tables (e.g., `Transaction`, `Category`). + - `DTO`: Data Transfer Objects used to shape data for the views and API responses. + - `Component`: Contains general-purpose components and utility classes. +- `src/main/resources`: + - `static`: For static assets like CSS, JavaScript, and images. + - `templates`: Contains Thymeleaf HTML templates. + - `application.properties`: For application configuration. \ No newline at end of file diff --git a/future.md b/future.md new file mode 100644 index 0000000..bd63a95 --- /dev/null +++ b/future.md @@ -0,0 +1,17 @@ +# 🚀 Future Plans + +I am constantly looking to evolve my Personal Finance Tracker. Here is what is currently on my development roadmap: + +### Analytics +- **Visualizations**: Advanced charts for spending habits using Chart.js. + +### Data Management +- **Export**: Ability to export data to CSV and PDF formats. + +### Budgeting +- **Category Limits**: Set monthly spending limits for specific categories. +- **Alerts**: Email or UI notifications when approaching budget limits. + +### Security +- **User Accounts**: Implementation of Spring Security for user registration and login. +- **Encryption**: Secure storage of sensitive financial data. \ No newline at end of file diff --git a/stack.md b/stack.md new file mode 100644 index 0000000..3d45b49 --- /dev/null +++ b/stack.md @@ -0,0 +1,17 @@ +# 🛠️ Tech Stack + +### Backend +- **Language**: Java 25 +- **Framework**: Spring Boot +- **Persistence**: Spring Data JPA +- **Database**: MySQL + +### Frontend & Interactivity +- **Templating**: Thymeleaf +- **Styling & Scripts**: Bootstrap 5, Chart.js, HTML5, and custom CSS for a responsive and clean design. + +## Other tools +- **Version Control**: Git for source code management. + +## Build & DevOps +* **Build Tool**: Maven \ No newline at end of file