Cacao Accounting Desktop App.
Project description
Cacao Accounting Desktop
This project packages Cacao Accounting as a desktop application for Windows. The current desktop wrapper uses PySide6 instead of TkInter and starts a local WSGI server with waitress in the background while the user interacts with the application from an embedded Qt WebEngine browser.
Please note that if you are a Linux or Mac user you can host Cacao Accounting for your personal use with a few steps, this project is focused in Windows system that do not have a default install of Python.
Current desktop architecture
The desktop application now separates business rules from the UI:
- A pure core layer manages configuration, SQLite directories, URI generation, backup and restore operations.
- A PySide6 main window lets the user select the SQLite directory, refresh the database list, create new databases, restore backups and open the web app.
- A waitress server is started in the background and stopped cleanly when the desktop window closes.
Run locally
Install dependencies and start the desktop wrapper:
python -m pip install -r requirements.txt
python cacaoaccounting.pyw
Useful validation commands:
python -m build
pytest
Cacao Accounting as stand alone executable for Windows.
Please note that this is not a native Windows application. The desktop wrapper ships Python plus the dependencies required to run the Flask-based web app as a local desktop experience, now with a native Qt shell and an embedded browser.
Note than been usable as standalone Windows app is one of the main reason beging the development of the Cacao Accounting project.
Create a Windows executable
Several steps are necessary to create a windows executable:
- Download WinPython 3.8.10, this contain a portable version of python suitable to run Cacao Accounting as a desktop app.
Please note that there is no formal requirement on the Python version,
Python 3.8.10 is taken as the base because it is the last stable version
to support Windows 7.
Support for Windows 7 ended on January 14, 2020, however some people may
find it useful to be able to run Cacao Accounting on Windows 7 (it is up
to the user to use a version of their operating system without manufacturer
support, updating the operating system version is highly recommended).
The 32-bit version must be functional but it is recommended to at least
use a Core i3 processor or higher, which are 64-bit processors.
It is possible that future versions of this project will update to a more
recent version of python.
-
Uncompress WinPython 3.8.10, this will create a directory name
WPy64-38100and inside this directory a copy of Python portable namedpython-3.8.10.amd64 -
Copy the content of
python-3.8.10.amd64to thepydistin the same directory that the scriptcacaoaccounting.pyw, your working directory should be like this:
work-dir:
|-assets
|-cacaoaccounting.pyw
|-LICENSE
|-pydist
|-python.exe
|-[support files to the python portable enviroment]
|-README.md
|-requirements.txt
|-setup.nsi
- Install requirements inside the python portable enviroment with:
pydist\python.exe -m pip install -r requirements.txt
- Ensure the python portable enviroment can run the scritp with:
pydist\python.exe cacaoaccounting.pyw
- Generate a Windows executable with:
python -m pip install gen-exe
gen-exe --hide-console cacaoaccounting.exe "{EXE_DIR}\\pydist\\python.exe cacaoaccounting.pyw" --icon-file assets/icon.ico
Your working directory now will have a Windows executable:
work-dir:
|-assets
|-cacaoaccounting.pyw
|-cacaoaccounting.exe
|-LICENSE
|-pydist
|-python.exe
|-[support files to the python portable enviroment]
|-README.md
|-requirements.txt
|-setup.nsi
Doble click on the executable to verify it works.
- Create a Windows installer with nsis using the
setup.nsi, this will create a installer that can be shared to final users.
Please consider that .exe installers, unlike .msi installers, may represent a danger
to your computer by containing malicious software or performing actions not authorized
by the user. For this reason, we recommend only using .exe installers obtained from
reliable sources. Since Cacao Accounting Desktop is distributed free of charge, we
recommend that you always download the application from the official Cacao Accounting
website and do not use installers provided by third parties.
To reduce the risk of damage to your computer, the Cacao Accounting installer does not
require administrator permissions and only makes changes to your user folder without
affecting other users on the computer.
Copyright
Copyright 2024 BMO Soluciones, S.A.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cacao_accounting_desktop-2026.7.4.tar.gz.
File metadata
- Download URL: cacao_accounting_desktop-2026.7.4.tar.gz
- Upload date:
- Size: 118.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9da6c172213257d8916e89c4e18ac2a4a6c422cab54e03d41cec93b66ba475d0
|
|
| MD5 |
9a01525a096437fb63183e5f3cfc2f0f
|
|
| BLAKE2b-256 |
17c3fe6c935ae7292e24522e2c36ee9d35ded69f0e938db321e4e5c66f46d650
|
Provenance
The following attestation bundles were made for cacao_accounting_desktop-2026.7.4.tar.gz:
Publisher:
publish.yml on cacao-accounting/cacao-accounting-desktop
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cacao_accounting_desktop-2026.7.4.tar.gz -
Subject digest:
9da6c172213257d8916e89c4e18ac2a4a6c422cab54e03d41cec93b66ba475d0 - Sigstore transparency entry: 2065456840
- Sigstore integration time:
-
Permalink:
cacao-accounting/cacao-accounting-desktop@49673e8f380b584d89728a86678972b81d47c9eb -
Branch / Tag:
refs/heads/main - Owner: https://github.com/cacao-accounting
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@49673e8f380b584d89728a86678972b81d47c9eb -
Trigger Event:
workflow_run
-
Statement type:
File details
Details for the file cacao_accounting_desktop-2026.7.4-py3-none-any.whl.
File metadata
- Download URL: cacao_accounting_desktop-2026.7.4-py3-none-any.whl
- Upload date:
- Size: 115.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e0650f1c3456ede729fe8e146cfcd32803c498342b1ca9bbaae0d11f4993496
|
|
| MD5 |
893d859a9904c93617bb4f0aa911d9fd
|
|
| BLAKE2b-256 |
13034bed342e2a239a9422c68e09a5a58f00cef7e5912a2b7d6b3d4818a81634
|
Provenance
The following attestation bundles were made for cacao_accounting_desktop-2026.7.4-py3-none-any.whl:
Publisher:
publish.yml on cacao-accounting/cacao-accounting-desktop
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cacao_accounting_desktop-2026.7.4-py3-none-any.whl -
Subject digest:
6e0650f1c3456ede729fe8e146cfcd32803c498342b1ca9bbaae0d11f4993496 - Sigstore transparency entry: 2065457171
- Sigstore integration time:
-
Permalink:
cacao-accounting/cacao-accounting-desktop@49673e8f380b584d89728a86678972b81d47c9eb -
Branch / Tag:
refs/heads/main - Owner: https://github.com/cacao-accounting
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@49673e8f380b584d89728a86678972b81d47c9eb -
Trigger Event:
workflow_run
-
Statement type: