- Dart 99%
- CMake 0.3%
- C++ 0.2%
- Just 0.1%
- Ruby 0.1%
- Other 0.1%
| .idea | ||
| .kiro/steering | ||
| .vscode | ||
| android | ||
| assets | ||
| icons | ||
| ios | ||
| lib | ||
| linux | ||
| macos | ||
| metadata/en-US | ||
| schemas/ReckonerDb | ||
| test | ||
| web | ||
| .gitattributes | ||
| .gitignore | ||
| .gitmodules | ||
| .metadata | ||
| analysis_options.yaml | ||
| app.iml | ||
| build.yaml | ||
| devtools_options.yaml | ||
| flutter_launcher_icons.yaml | ||
| install.sh | ||
| justfile | ||
| LICENSE | ||
| pubspec.lock | ||
| pubspec.yaml | ||
| README.md | ||
| reckoner.iml | ||
Reckoner
Privacy first financial tracking, with radical customizability!
Audience
This tool is designed for both average end users and powers users interested tracking their finances and keeping that information private. Most other tracking tools include the ability for the company to aggregate and use your personal data for marketing and advertisements to you. This app is for those who don't want to give these companies access to some of your most private data and want a polished and customized view of their finances.
This tool is not designed to convert people who are happy with their financial tracking solution. If you are happy with YNAB, Personal Capital, Tiller, etc. then keep on keeping on. I designed this tool when I couldn't find an open source financial tracking tool that met my need for private financial tracking and customizability for all the operating systems I use.
Demo
If you want to try this out before installing I have a demo site at demo.reckoner.finance. You can do anything in the demo except device syncing. The demo site uses an in-memory database which re-adds all data on refresh. If you setup device syncing, then every time you would start getting duplicate data every time the browser refreshed.
Features
- Data is stored locally in a SQLite database
- Multi-paradigm tracking support
- Ability to add multiple user defined category groups
- Create custom report layouts to view relevant data at a glance
- Native support for Linux, Android, and Web
- Multi-currency support (including custom user currencies)
- Splitting of transactions to add tags and categories based on the split
- Device synchronization through Pocketbase
- Aggregator support through SimpleFin
Planned Features
These are planned features to be added to Reckoner. The order is a roughly prioritized list.
- Add welcome screen to walk user through setting up the application
- Make build reproducible for FDroid main repo
- Tokenize strings and support localization
- Rules engine for automation
- Recurring transaction handling
- Add dedicated cloud sync and aggregator support so users don't need to setup own services
- Marketplace for custom designed financial tracking 'dogmas' (use of categories, tags, and reports to support a financial tracking methodology)
Installing
Reckoner is available on the following platforms.
Google Play
You can download it now on Google Play if you become a tester. In order to release an app on Google Play, you need 12 testers to install your app in closed testing for 14 days continuously. Keep in mind that the Google Play version uses a signing key that Google controls so you must choose wheter to install from Google Play or from the Codeberg releases.
Desktop
Desktop support was removed from Reckoner. I'm just a solo dev and the desktop builds took a lot of time to maintian. With recent improvements in web with Flutter worker handling and sqlite improvements, desktop devices will be supported using the PWA.
Building
This relies on the latest release of the flutter framework. Consult the relevant installation guide for your operating system and the platforms you are trying to build. Most of the builds can be invoked by calling the relevant make command. The commands below assume a bash like shell with cmake installed.
For each build, jut invoke the relevant build command. For Linux you need to make sure the build dependencies are installed. I have a script I used for ubuntu based distributions in the base path install.sh.
There's a justfile which I use to make it easy for myself to build Reckoner for the supported platforms. You can use just all_linux to build for web/android/linux on a Linux machine and just all on a Mac to build for all supported platforms.
Credit
Before building this tool I used Firefly III for my personal finance tracking. It is a great tool and some of the user interface design for this app borrows heavily from that project. However, as James Cole states in his documentation "It's opinionated, which means it follows the mantras that I, the developer like.". That is his prerogative, but I found myself bumping into these limitations imposed by the design and wanted to build not just a tool for myself, but one which could be molded for any mantra. Thus this tool.