Java implementation
Personal Expense Tracker in Java
Build a console application that records income and expenses, organizes transactions by category, calculates the current balance, and displays a financial summary.
Setup instructions
This project uses plain Java without any complex build tools.
1. Ensure you have Java (JDK 17 or newer) installed.
2. Extract the downloaded ZIP file.
3. Open your terminal and navigate to the extracted `src` directory.
4. Compile all the Java files by running: `javac *.java`
5. Start the application by running: `java Main`
*Note: The application stores data in the `data/transactions.csv` file.*
Project files
Solution explanation
All project files are located together in the `src` folder for simplicity:
- `Main.java`: The entry point that runs the program.
- `Transaction.java`, `TransactionType.java`, `FinancialSummary.java`: The core data models representing transactions.
- `ExpenseTracker.java`: The core business logic for calculating summaries.
- `TransactionRepository.java`, `CsvTransactionRepository.java`: Handles reading and writing data to the CSV file.
- `ConsoleInput.java`, `ReportPrinter.java`: Classes dedicated to handling keyboard input and nicely formatting the output.