Home

Awesome

Family Accounting Tool

CI Status

Family Accounting Tool keeps track of every transaction your family makes. Its goal is to:

Screenshot

screenshot

Installation from release

db.default {
  driver = com.mysql.jdbc.Driver
  url = "jdbc:mysql://localhost/facto?user=mysqluser&password=mysqlpassword"
  slick.profile = "slick.jdbc.MySQLProfile$"
}

Installation with Docker (discouraged)

Warning: The following works fine for launching a demo server to have a look. But if you want to run this as a service with real data and custom configuration, it is recommended to follow the "Installation from release" section instead (see this issue for the reasons why).

The following commands will launch a new server alongside a database in Docker containers:

# Get the docker-compose.yml file
wget https://raw.githubusercontent.com/nymanjens/facto/master/docker-compose.yml

# Choose a unique random string here of sufficient length
export APPLICATION_SECRET="$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)"

# Create an empty database with a single admin user
docker-compose run web sleep 5 # Wait for the database to be ready
docker-compose run web bin/server -DdropAndCreateNewDb
docker-compose run web bin/server -DcreateAdminUser

# Bring up the server
docker-compose up

When done, browse to http://localhost:9000/ (username: "admin", password: "changeme")

Configuration

Usage

To effectively use this tool, you must learn to input the transactions correctly. Therefore, it's important to understand the meaning of categories and accounts.

Categories

These are used to split up your expenses into categories. Every account has some special categories:

Accounts

An account can refer to a regular person or the common account.

Example:

A family has two members: Alice and Bob. There will be three accounts:

Alice and Bob will regularly transfer money to the common account which can be used to make common expenses. This transfer to the common account is called an 'endowment'.

Inputting transactions

Special fields:

Using the Cash Flow overview effectively

The cash flow overview is a powerfull tool to check for unaccounted expenses.

You should:

About this project

This project was created and maintained by me (Jens) in my spare time for my family, and I made it open source in the hope that it might be useful for others.

If you decide to use this, chances are you'll either be using it a lot, or stop using it after some time. If you are in the former category, please send me a message at nymanjens.nj@gmail.com (or consider sending a donation) so I know others are using this. Definitely also let me know if you have any interest in upgrading to newer versions or using the more advanced (hidden) features like exchange rates and inflation correction.