Skip to main content

LedgerLoom: accounting concepts for the modern software mind.

Project description

LedgerLoom

LedgerLoom is a tiny, opinionated Python project that teaches accounting using modern developer mental models: event logs, derived views, and invariants.

It ships as:

  • a Python package (ledgerloom) you can run locally
  • a ReadTheDocs “textbook” with short chapters + reproducible outputs

Install

pip install ledgerloom


## Run Chapter 01 (Journal vs Event Log)

This chapter generates a small, deterministic demo dataset and writes artifacts to an output folder:

```bash
python -m ledgerloom.chapters.ch01_journal_vs_eventlog --outdir outputs/ledgerloom --seed 123

You should see files like:

journal.csv (traditional accounting journal)

eventlog.jsonl (append-only event log)

ledger_view.csv (derived view)

trial_balance.csv (invariant check)

entry_explanations.md (human-friendly explanation)

LedgerLoom

LedgerLoom teaches accounting using modern developer mental models: event logs, database views, invariants, and reproducible pipelines.

It is both:

  1. a textbook-style set of chapters on Read the Docs, and
  2. a tiny, MIT-licensed Python library + CLI for generating and validating accounting-shaped artifacts.

Links


Why LedgerLoom exists

Many people learn accounting as rules + vocabulary.

LedgerLoom teaches accounting as systems engineering:

  • a ledger is a database view of an event log
  • double-entry is a consistency invariant
  • a trial balance is an automated check
  • financial statements are deterministic outputs from well-defined transformations

Core idea:

Don’t just calculate results — engineer them.


The mental model mapping

Accounting concept Developer mental model
Journal entries Append-only event log (immutable facts)
General ledger Derived view / projection over events
Double-entry Invariant: debits == credits (by entry)
Trial balance Automated check over account totals
Close process Period-end transformation + roll-forward
Audit trail Reproducibility + provenance + diffs
Reconciliation Control loop: expected vs observed

Install

pip install ledgerloom

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ledgerloom-0.1.2.tar.gz (10.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ledgerloom-0.1.2-py3-none-any.whl (10.7 kB view details)

Uploaded Python 3

File details

Details for the file ledgerloom-0.1.2.tar.gz.

File metadata

  • Download URL: ledgerloom-0.1.2.tar.gz
  • Upload date:
  • Size: 10.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ledgerloom-0.1.2.tar.gz
Algorithm Hash digest
SHA256 31564b533d8c30115c11b25514d449998b19b8a425cb90e82a5bd9800dc2fc18
MD5 30c43935a5693ab60257602dfa689b27
BLAKE2b-256 44716094638ace316790e46d95de4abd4efda3d3841ff2a23f6feb5e72af7dd1

See more details on using hashes here.

Provenance

The following attestation bundles were made for ledgerloom-0.1.2.tar.gz:

Publisher: pypi-publish.yml on pystatsv1/ledgerloom

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ledgerloom-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: ledgerloom-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 10.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ledgerloom-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 67fea6ad97e9e5b3d0820e28c07f28c96bcc8d94ce143f95d8cc9c0a920df572
MD5 3adb68cccba23fd2d975bf734ba13bd4
BLAKE2b-256 9980319567103ade34e0a4b7c29f7f55929c9f1d7e21b214ac142738920d7afc

See more details on using hashes here.

Provenance

The following attestation bundles were made for ledgerloom-0.1.2-py3-none-any.whl:

Publisher: pypi-publish.yml on pystatsv1/ledgerloom

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page