An open API service indexing awesome lists of open source software.

https://github.com/wisskirchenj/budget-manager

Java CL-app for managing budget
https://github.com/wisskirchenj/budget-manager

java menu-navigation

Last synced: over 1 year ago
JSON representation

Java CL-app for managing budget

Awesome Lists containing this project

README

          

# IDEA EDU Course

Implemented in the Java Developer Track of hyperskill.org JetBrain Academy.

Project goal is to implement a Command Line Budget Manager application with persistence and
planning functionality.

## Technology / External Libraries

- Java 20
- Lombok
- Slf4j
- Tests with Junit-Jupiter and Mockito
- Gradle 8.1.1

## Program description

The application will support you in analyzing your expenses and estimating the income, which sometimes may be difficult.
You can create your own personal budget manager that counts the ins and outs and helps control the finances.

## Project completion

Project was completed on 29.04.23.

## Repository Contents

Sources for all project tasks (5 stages) with tests and configurations.

## Progress

10.04.23 Project started. Setup of build and repo with gradle on Kotlin basis.

10.04.23 Stage 1 completed. Read in list of purchases and calculate total price.

15.04.23 Stage 2 completed. Add a main menu with functionality to add income, purchases, show balance
and sum purchases.

28.04.23 Stage 3 completed. Generic menu-controller framework based on Enum Choice Types. Full test coverage
Bump to Gradle 8.1.1 and Java 20.

29.04.23 Stage 4 completed. Introduce BudgetState data class for application state. Serialize to file and
deserialize on save and load menu options.

29.04.23 Final Stage 5 completed. Add AnalyzeController to handle new Analyze-Menu Point, that allows filtered
and sorted Purchase output and aggregation within Categories with an own submenu. Refactor ShowPurchaseController
to factor out a PurchaseDisplayer used in both controllers.