PHP/JavaScript webapp to analyse spending habits
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
Chris Smith 6ce20c17a4 Ignore temporary files 13 年前
externals Add repeated transactions 13 年前
res Add a header 13 年前
.gitignore Ignore temporary files 13 年前
.gitmodules Add repeated transactions 13 年前
README.md Frontend now only needs one set of data 13 年前
analyser.js Add support for sporadically repeating transactions 13 年前
data.php Move rules, categories etc out of main data file 13 年前
index.html Add support for sporadically repeating transactions 13 年前

README.md

Overview

This project consists of a PHP backend which can parse CSV files containing bank account transaction information, and a JavaScript front-end which can analyse and display stats about the parsed data.

Data formats

Backend

The backend expects a ‘Statements’ directory containing CSV files with the following fields:

  • Date (dd/mm/yy)
  • Amount
  • Description

Frontend

The JS frontend uses a map containing one entry for each month’s worth of transactions. At present it expects this map to be assigned to a variable called ‘data’. Each month consists of an array of transactions, which are themselves objects containing the following properties:

  • Date - currently a serialisation of a PHP DateTime object, e.g.
    {"date":"2009-01-05 00:00:00","timezone_type":3,"timezone":"UTC"}
  • Amount
  • Description - a user-friendly description of the transaction
  • RawDescription - the raw description from the statement (not used)
  • Category - user-defined category for the transaction (optional)
  • Type - user-defined type for the transaction (optional)

If the category has the special value (Ignored), it is excluded from certain calculates and graphs and showed as greyed out in tables.