A minimal Python package for a simple bank ledger with Account, Transaction, and Ledger.
- Library code lives in
src/bank_ledger/ - Handy scripts live in
scripts/ - Installed locally in editable mode via
requirements.txt(contains-e .)
bank-ledger/
├─ src/
│ └─ bank_ledger/
│ ├─ __init__.py
│ ├─ __main__.py
│ ├─ account.py
│ ├─ ledger.py
│ └─ transaction.py
├─ scripts/
│ └─ smoke_test.py
├─ .gitignore
├─ pyproject.toml
├─ requirements.txt
└─ README.md
- Python 3.11+ (3.12/3.13 OK)
# from repo root
python -m venv .venvWindows (PowerShell):
. .\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
pip install -r requirements.txtmacOS/Linux:
source .venv/bin/activate
python -m pip install --upgrade pip
pip install -r requirements.txtThis installs the package in editable mode so changes under src/bank_ledger/ are picked up immediately.
Run using CLI:
python -m bank_ledgerRun using GUI:
python -m bank_ledger.guiRun the smoke script:
python scripts/smoke_test.py