44 lines
3.1 KiB
Markdown
44 lines
3.1 KiB
Markdown
|
# Luzifer / accounting
|
||
|
|
||
|
## What's this?
|
||
|
|
||
|
`accounting` is a server based software to keep track of my budget on all the different accounts I do have. It ensures my money is where I need it and is available when I need it.
|
||
|
|
||
|
It is stronly inspired by [YNAB](https://www.ynab.com/) and uses some of the same principles but in some parts deviates from them.
|
||
|
|
||
|
## Why write an own software?
|
||
|
|
||
|
There is plenty of accounting software out there (including YNAB) which doesn't really fit my use-case. Also after being a happy customer of YNAB for nearly 9 years I've seen many changes implemented into YNAB which didn't really fit my use-case anymore and some of them even broke the ways I was using the software.
|
||
|
|
||
|
This piece of software if my way to ensure I can continue to work the way I want while ditching all the features I don't need. So this is not a clone and probably not a replacement for YNAB to you but for me it is.
|
||
|
|
||
|
## Should I use it?
|
||
|
|
||
|
Well, depends on whether it fits your needs. This software carries a strong API-first approach so my automation can do stuff for me. The interface is in a "first usable version" state and I wouldn't call it ready. Feature-wise this is not ready yet:
|
||
|
|
||
|
- [x] Manage accounts and categories
|
||
|
- [x] Manage a (monthly) budget based on the categories
|
||
|
- [x] Differentiate between budget and tracking accounts
|
||
|
- [x] Have an API to automatically enter transactions, transfer money between accounts & categories
|
||
|
- [x] Can properly calculate based on your transactions how many money you have in which category
|
||
|
- [ ] Have reports telling you about your net-work, where the money went, …
|
||
|
- [ ] Have a fancy UI with keyboard-shortcuts and all the cool stuff
|
||
|
|
||
|
So back to your question: Get yourself a copy, start it (the default database is an in-memory SQLite database) and take it for a test-drive. You like it? Put a proper database under it, install it on a server and happy budgeting… You don't like it? No offence taken, just put it into the trash and use something else.
|
||
|
|
||
|
## Will you accept contributions?
|
||
|
|
||
|
In short: Maybe. Longer version: This software started as a system to do **my** budget and furthermost needs to fit my needs. I don't want feature-creep in it, I don't want features I'll never use. If you plan to hack on it: Just create a fork, hack on it, build something cool for yourself. If you think I'd like the changes you made: Lets talk about it but keep in mind this explanation and don't be angry with me when the response is "Nah, I don't think this will fit my version…"!
|
||
|
|
||
|
## How to run it?
|
||
|
|
||
|
For local testing just clone the repo, ensure you got a fairly new `nodejs` (including NPM) and `go` toolchain installed, adjust `node_modules` and `run` targets in the `Makefile` and
|
||
|
|
||
|
```console
|
||
|
# make run FONTAWESOME_NPM_AUTH_TOKEN=your-fa-pro-token
|
||
|
```
|
||
|
|
||
|
then go to http://localhost:5000/ and try it.
|
||
|
|
||
|
To really host it, `make build` it (you need to find a way to get your FA Pro Token into the build and most likely you will need to edit the `node_modules` target in the `Makefile`), put it on your server and let it run. (It's a binary so probably use systemd to run it and an nginx as proxy in front of it doing auth-stuff…)
|