ezBookkeeping is a lightweight, self-hosted personal finance app with a user-friendly interface and powerful bookkeeping features. It's easy to deploy, and you can start it with just one single Docker command. Designed to be resource-efficient and highly scalable, it can run smoothly on devices as small as a Raspberry Pi, or scale up to NAS, MicroServers, and even large cluster environments.
ezBookkeeping offers tailored interfaces for both mobile and desktop devices. With support for PWA (Progressive Web Apps), you can even add it to your mobile home screen and use it like a native app.
Live Demo: https://ezbookkeeping-demo.mayswind.net
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
Download the latest release: https://github.com/mayswind/ezbookkeeping/releases
Linux / macOS
$ ./ezbookkeeping server run
Windows
> .\ezbookkeeping.exe server run
By default, ezBookkeeping listens on port 8080. You can then 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
or
PS > .\build.ps1 package -Output ezbookkeeping.zip
All the files will be packaged in ezbookkeeping.zip
.
You can also build a Docker image. Make sure you have Docker installed, then follow these steps:
Linux
$ ./build.sh docker
We welcome contributions of all kinds.
Found a bug? Submit an issue
Want to contribute code? Feel free to fork and send a pull request.
Contributions of all kinds — bug reports, feature suggestions, documentation improvements, or code — are highly appreciated.
Check out our Contributor Graph to see the amazing people who've already helped.
Help make ezBookkeeping accessible to users around the world. If you want to contribute a translation, please refer to our translation guide.
Currently available translations:
Tag | Language | Contributors |
---|---|---|
de | Deutsch | @chrgm |
en | English | / |
es | Español | @Miguelonlonlon |
fr | Français | @brieucdlf |
it | Italiano | @waron97 |
ja | 日本語 | @tkymmm |
ko | 한국어 | @overworks |
nl | Nederlands | @automagic |
pt-BR | Português (Brasil) | @thecodergus |
ru | Русский | @artegoser |
th | ไทย | @natthavat28 |
uk | Українська | @nktlitvinenko |
vi | Tiếng Việt | @f97 |
zh-Hans | 中文 (简体) | / |
zh-Hant | 中文 (繁體) | / |
Don't see your language? Help us add it.