ezBookkeeping is a lightweight self-hosted personal bookkeeping app with user-friendly interface for both desktop and mobile devices. It supports PWA, you can add the app homepage to the home screen of your mobile device and use it just like a native app. It's easily to be deployed and configured, you can just deploy it by a single command via Docker. It supports almost all platforms, including Windows, macOS, and Linux, and is compatible with x86, amd64 and ARM hardware architectures. It only requires very few system resources, and you can even run it on a Raspberry Pi device.
Online Demo: https://ezbookkeeping-demo.mayswind.net
- Open Source & Self-Hosted
- Lightweight & Fast
- Easy Installation
- Support Docker
- Support multiple databases (SQLite, MySQL, PostgreSQL, etc.)
- Support multiple operation system & hardware architectures (Windows, macOS, Linux & x86, amd64, ARM)
- User-Friendly Interface
- Native UI for both desktop and mobile devices
- Support PWA, providing near-native experience for mobile devices
- Dark theme
- Powerful Bookkeeping Features
- Support two-level account
- Support two-level transaction categories and predefined categories
- Support transaction pictures
- Support geographic location tracking and map
- Support recurring transactions
- Search and filtering transaction records
- Data visualization and statistical analysis
- Localization Support
- Multi-language support
- Multi-currency support with automatic exchange rate updates from various financial institutions
- Multi-timezone support
- Customizable date, time, number and currency display formats
- Security & Reliability
- Two-factor authentication (2FA)
- Login rate limiting
- Application lock (PIN code / WebAuthn)
- Data Export & Import (CSV, OFX, QFX, QIF, IIF, GnuCash, FireFly III, Beancount, etc.)
Visit Docker Hub to see all images and tags.
Latest Release:
$ docker run -p8080:8080 mayswind/ezbookkeeping
Latest Daily Build:
$ docker run -p8080:8080 mayswind/ezbookkeeping:latest-snapshot
Latest release: https://github.com/mayswind/ezbookkeeping/releases
Linux / macOS
$ ./ezbookkeeping server run
Windows
> .\ezbookkeeping.exe server run
ezBookkeeping will listen at port 8080 as default. Then you can visit http://{YOUR_HOST_ADDRESS}:8080/
.
Make sure you have Golang, GCC, Node.js and NPM installed. Then download the source code, and follow these steps:
Linux / macOS
$ ./build.sh package -o ezbookkeeping.tar.gz
All the files will be packaged in ezbookkeeping.tar.gz
.
Windows
> .\build.bat package -o ezbookkeeping.zip
All the files will be packaged in ezbookkeeping.zip
.
You can also build docker image, make sure you have docker installed, then follow these steps:
Linux
$ ./build.sh docker