Giter Club home page Giter Club logo

financelist-desktop's Introduction

FinanceList-Desktop

Build Status Coverage Status GitHub license GitHub release Documentation

FinanceList-Desktop is a simple finance managing tool which works on Linux, macOS and Windows. It helps you to keep track of your expenses and allows you to manage your finances with ease. FinanceList-Desktop runs locally on your computer, i.e., all data is only stored on your computer and nowhere else.

⚠️ This software is not actively maintained anymore.


Features

Overview

FinanceList-Desktop offers you a variety of different features to keep your finances under control. Some of the included features are listed below.

  • Add as many budgets as you like. You can even distribute your earnings across multiple budgets automatically by setting up a distribution policy.
  • Create recurring transactions which execute repeatedly in a given interval.
  • Filter your data by different criteria (names, categories, date, etc.) and look at a visual representation of the data in form of a chart.

Balances

In order to learn more about all the features provided by FinanceList-Desktop, simply try it out yourself.


Installation

Installation is straightforward: Navigate to the latest release of this application and download the corresponding build for your operating system.

After downloading, unpack the archive and run the executable in order to start the program.

It is really that simple.


Usage

I gave my best to make the application as self-explaining as possible, but if some things remain unclear, you can visit the Wiki page of this repository. It gives you a quick overview of the features and how to use them.


Acknowledgements

This application has been build with electron-quick-start.

financelist-desktop's People

Contributors

kimbtech avatar malte311 avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

financelist-desktop's Issues

Overview sidebar format

At the moment, the text in the sidebar is not perfectly aligned because of the icons. Maybe this can be improved.

Improve efficiency

At the moment, every time a single element on a page is changed, the whole page will update. Maybe there is a better way to reload elements on a page, so we can be more efficient.

Encrypted user data

At the moment, all the data is saved unencrypted in .json files. Maybe it will be useful at some point to encrypt these data.

Colorful icons

At the moment, all icons are black. We could use some colors here.

Improve detailed overview on balances page

  1. The filter should be set to "spending" by default.
  2. The graph needs more colors or has to repeat colors instead of using only the last color when no colors are left.
  3. Maybe it could be useful to summarize identical names in some way.

Setting budgets

At the moment you can have as many budgets as you wish. Therefore, there should exist a feature to split your earnings between the budgets (set a percentage value for each budget and then split every earning according to it).

Handle very long inputs

Anytime a user can type in some data, the program should make sure, that its length is not exceedingly long.

Indentation main.js

Indentation in main.js needs to be fixed (it is inconsistent at the moment).

Let the user type in a date for new transactions

At the moment, the application will automatically set the current day as a date for new transactions.
When the user wants to enter up a transaction, there is no possibility for him/her to set the correct date.

Maybe the jQuery UI Datepicker can be useful here.

Tooltip in charts

Instead of only displaying numbers, it would be better to display numbers with a currency sign.

Remove electron-json-storage completely

Since the app uses the NodeJS Filesystem now, there is no need for electron-json-storage anymore.
What has to be done: In JSONhandler.js, we are still using storage.getDefaultDataPath(). If we can get rid of this, then there is no need for electron-json-storage anymore.

Recent earnings

Since recent spendings are displayed, it would be nice if recent earnings are displayed as well.

Create an online demo version

Since this is a Desktop-application, there is not much to see about the program itself in this repository.
One needs to install the application to see what it does. The idea is to implement an online demo version of the app, so everyone can gain a small insight into the app.

Filter for specific names, dates, weeks, etc.

Add a feature which allows the user to filter spendings and/or earnings by names, dates, weeks, months, years. (e.g. return the sum for a specific spending like "bus ticket" for a given period of time)

Allocation for fixed sums

At the moment, it is only possible to allocate money by percentage values. It should be possible to select fixed sums as well.

Find a way to move files cross-device

At the moment, the application displays an error dialog when trying to move files cross-device. It would be nicer, if the application finds a way to move the files anyway.
(in JSONhandler.js, function moveFiles( from, to ))

Confirm dialogues with enter

At the moment, the user has to click the button to confirm his input. I want it to be possible for the user to confirm dialogues with enter as well.

Recurring transactions on a day that does not exist

At the moment, there is a bug with recurring transactions. Example:

You create a recurring transaction on the 31th January with a monthly interval.
Now the next transaction will occur on the 31th February which, of course, does not exist.

Relocate files when setting a new path

At the moment, the user can change the path at any time but the files will afterwards still be in the old directory. It would be nice moving the files automatically any time a user changes the path.

Improve graph on balances page

  1. After using all available colors, don't use the first color again, instead use another (otherwise, there are two parts with the same color next to each other)
  2. Display 2.50€ instead of 2.5€.

PDF Export

Add a feature to export a monthly overview to PDF format.

Handling the storage stricter

At the moment, the program will get into trouble when reading .json files which are modified unwantedly by someone. It would be nice to make sure the format of the files is correct and can be read before reading them.

Hide HTML elements by default

At the moment, HTML elements are not hided by default. This means when the page is loading, all elements are shown for a split second, but only elements with the correct lang attribute should be visable.

Allow 5 percent steps in allocation

At the moment, it is not possible to choose 5% allocation, for example. It would be useful to be able to select values like 5%, 15%, etc.

Enable transfers

Since a user can have as many budgets as he wants, it would be useful for him to be able to transfer money easily between them.

Renaming budgets wont rename the data.

This needs to be fixed, since all the data is useless otherwise.
Also, it might be useful to do the same when deleting a budget: Delete all the data for the deleted budget.

Recurring transactions - Handling non existing dates still not perfect

Given the following example:

Recurring transaction with monthly interval starts on 2018-01-31. Now, the next date would be 2018-03-03 (because of three day overflow on February). After this, the date will always be the 3rd day of the month, although it was originally the 31th.

Display correct seperator when showing the path

At the moment, the application always uses / as a path seperator. Under windows this leads to inconsistencies, since the path seperator is a different one (\).
Example:
C:\Users\Malte\Documents/settings.json

Enable repetitive transactions

In addition to adding expenditures and earnings, it would be great to have the possibility to schedule recurring transactions (like subscriptions).

Handling surpluses

At the moment, the budgets contain only earnings from the current month. The balance from previous months is completely neglected.

Variable language in application menu

At the moment, the application menu is always in English, even if the currently selected language is a different one. Maybe this could be optimized.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.