Skip to content

A simple personal finance application built with Jmix framework

Notifications You must be signed in to change notification settings

knstvk/akkount-jmix

Repository files navigation

akkount

A simple personal finance application built with Jmix framework.

desktop-ui

mobile

Features

In short, the application solves two problems:

  1. It shows the current balance by all accounts: cash, credit cards, deposits, debts, etc.
  2. It can generate a report by expense and income categories that shows where the money came from and what they were spent on in some period of time.

Some details:

  • There are accounts that represent different kinds of money.
  • There are operations: income to account, expense from account and transfer between accounts.
  • A category can be set for expense or income operations.
  • The current balance is constantly displayed and is recalculated after each operation.
  • Categories report shows the summary by two arbitrary periods of time to allow quick visual comparison. Any category can be excluded from the report. You can "drill down" into any row to see operations that comprise the row.
  • The system has a fully functional mobile-friendly web UI.

Development

You should have PostgreSQL, Java 17+ and Jmix Studio 2.1+ installed on your computer.

  • Open the project in Jmix Studio.
  • Right-click on Data Stores → Main Data Store item in Jmix tool window and select Recreate. Studio will create and initialize the local akkount database.
  • Run the application server using Jmix Application run/debug configuration.

The application UI is available at http://localhost:8080/akk. Login as admin / admin.

You can generate some test data:

  • Open Accounts view and click Generate sample data.
  • Enter the number of days to generate (e.g. 100) in the dialog and click OK.

Building and running

Open the terminal in the project directory and run the following command to build the executable JAR file:

./gradlew -Pvaadin.productionMode=true bootJar 

The resulting JAR will be created in build/libs directory.

Run the application:

java -jar akkount-0.6.jar

The main UI is available at http://localhost:8080/akk. Username: admin, password: admin.

About

A simple personal finance application built with Jmix framework

Resources

Stars

Watchers

Forks

Languages