muhasib-csr-wasm
v0.1.6
Published
Fork of muhasib using hledger-wasm to load entirely client side.
Readme
Fork of muhasib using hledger-wasm to load entirely client side.
muhasib-e-hledger (AKA muhasib)
A web interface for the hledger plain-text accounting program built as an isomorphic Rust application using the Leptos framework. Not very usable yet. So far, the intention is only to display and not enter data.
Usage
Define the JOURNAL_FILES environment variable in the shell or in a .env file to point to one or more journal files separated by commas, then either run cargo leptos serve or build it using cargo leptos build (add --release to build with release optimizations) and find the binary[^1] under target/debug or target/release accordingly.
Development
As above, but run it with cargo leptos watch.
Releasing
(Requires cargo-release to be installed.)
If just and Nushell are available, run just tag-version type. Otherwise, tag a new release using cargo release --no-publish --no-verify --sign type, where type is one of:
- major
- minor
- patch
- alpha
- beta
- rc
The pipelines will take care of building, uploading, and releasing the artefacts.
Configuration
All settings are controlled via environment variables. If a file named .env exists, it will be parsed with dotenv to populate the environment. Values in this file will not override existing values in the environment.
| Name | Description | Default (if any) |
|-----------------------------|------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------|
| LEPTOS_SITE_ADDR | Host and port to listen on | 127.0.0.1:3000 |
| LEPTOS_SITE_ROOT | Path to site directory (for standalone releases) | |
| JOURNAL_FILES | Comma-separated list of journal files | |
| HLEDGER_BINARY | Full path to hledger binary | (located via PATH) |
| HLEDGER_PAGE_SIZE_OPTIONS | Comma-separated list of page size options for viewing transactions | 10,20,50,100 |
| RUST_LOG | tracing_subscriber::filter::EnvFilter directive | info,muhasib=trace,muhasib::hledger::format=warn,muhasib::hledger::accounts=warn |
Docker
Docker images are automatically built and pushed to the repository but not tested or used anywhere.
Gallery
An assortment of screenshots.
Journal (28th August, 2024)

Account register (28th August, 2024)

Report (28th August, 2024)

Account register chart (3rd October, 2024)

[^1]: muhasib.exe on Windows, muhasib otherwise.
