Track shared grocery expenses – a holiday-project.
| cmd | cli: Add basic CLI frontend | |
| web | web(history): Pad single decimals with zero | |
| .gitignore | Initial Commit | |
| backend.lua | fix: drop invalid transactions instead of crashing when price is not a number | |
| fingeld-scm-0.rockspec | cli: Add basic CLI frontend | |
| fingeld.example.cfg | Initial Commit | |
| LICENSE | Initial Commit | |
| readme.md | fix: Improve nginx integration | |
FinGeld 💸
Track shared grocery expenses – a holiday-project.
Building
The FinGeld-backend is based on Lua and compiles to an nginx-mod-http-lua plugin:
> luarocks make --no-install
Nginx Config
location / {
root <fingeld-path>/web;
try_files $uri @fingeld;
}
location @fingeld {
default_type 'text/html';
# <fingeld-path>/bin
content_by_lua_block {
require 'ngx_fingeld'()
}
}
Make sure to configure the lua cpath in the http section of your nginx.conf:
http {
lua_package_cpath '<fingeld-path>/bin/ngx_?.so';
lua_code_cache off;
...
}
Config
Copy the reference configuration file fingeld.example.cfg (Lua syntax) to the runtime directory of your Nginx installation, as fingeld.cfg, and edit it to enter your travel companions names to the nerds array.
Fingeld stores all transactions in a small MessagePack-file (nerdstore.cm), which is created automatically with the first entry.
Attribution
- web/kahching.aac – Universal SoundEffects (2024) "Cash Register Sound Effect" – https://youtu.be/JvqwRlT-5IE
Created in 🇫🇮 by Lesosoftware and friends (2025)