KYM: Difference between revisions
Eleutherious (talk | contribs) Second check: fixes to facts, dates (UTC), glosses and attribution |
Eleutherious (talk | contribs) Plainer prose: fewer quotes, project claims attributed, glosses folded in |
||
| Line 10: | Line 10: | ||
| verified_against = README and commit of 10 October 2026 | | verified_against = README and commit of 10 October 2026 | ||
}} | }} | ||
'''KYM''' (Know Your Money) is a household envelope budget that syncs between its users' own devices over [[Logos Messaging]] (Logos Delivery, also called Waku) | '''KYM''' (Know Your Money) is a household envelope budget by the GitHub user vpavlin that syncs between its users' own devices over [[Logos Messaging]] (Logos Delivery, also called Waku). It has a [[Basecamp]] module for the desktop and an Android app, and the README calls it an alternative to the budgeting app YNAB (You Need A Budget). | ||
== What it does == | == What it does == | ||
* It keeps a zero-based envelope budget, which gives every unit of income a spending category. | * It keeps a zero-based envelope budget, which gives every unit of income a spending category. By the README's account, it has no server and no cloud custody of the finances. | ||
* It syncs a household's budget directly between its devices over Logos Delivery. The README says the sync is end-to-end encrypted. | * It syncs a household's budget directly between its devices over Logos Delivery. The README says the sync is end-to-end encrypted. | ||
* It holds several budgets at once. Each | * It holds several budgets at once. Each is its own household with its own secret, topic and event log, and is shared by showing its QR code or pairing code. | ||
* It records money as an append-only ledger | * It records money as an append-only ledger, in which an edit is a new event and a delete is a marker event (a tombstone). Two people editing offline therefore end up with the same budget after sync. | ||
* | * Its desktop view in Basecamp (<code>kym</code>) runs over a core module (<code>kym_core</code>), and the same core can run headless, with no interface, under <code>logoscore</code> as an always-on hub. | ||
* | * Its Android companion app logs an expense quickly and reads photographed receipts with on-device OCR. | ||
* It includes a command-line budget with accounts, categories, targets, bank import, reconciliation and reports. | * It includes a command-line budget with accounts, categories, targets, bank import, reconciliation and reports. | ||
Stage: Almost done. The README's status ends with "Needs real hardware to finish", | Stage: Almost done. The README's status says the engine, contract, crypto, merge and both module builds "are green and cross-checked". It ends with "Needs real hardware to finish", naming the phone's receive path and OCR accuracy on real receipts. It adds that the mobile Delivery transport is still being stabilised on real hardware. The README does not say whether it is an official Logos project. | ||
== Use it == | == Use it == | ||
| Line 31: | Line 31: | ||
== Build it == | == Build it == | ||
* <code>npm install</code> sets up the packages. <code>npm test</code> runs the engine and sync tests and <code>npm run demo</code> shows two partners editing one budget offline and then syncing. | * <code>npm install</code> sets up the packages. <code>npm test</code> runs the engine and sync tests, and <code>npm run demo</code> shows two partners editing one budget offline and then syncing. | ||
* The Android APK is built and signed locally with <code>scripts/build-apk.sh</code>. | * The Android APK is built and signed locally with <code>scripts/build-apk.sh</code>. | ||
* Releases are cut by pushing a <code>module-v*</code> tag | * Releases are cut by pushing a <code>module-v*</code> tag, after which CI builds the portable <code>.lgx</code> and refreshes <code>repo/index.json</code>. The only tag so far is v0.8.0. | ||
== Releases == | == Releases == | ||
Latest revision as of 23:27, 4 November 2026
KYM (Know Your Money) is a household envelope budget by the GitHub user vpavlin that syncs between its users' own devices over Logos Messaging (Logos Delivery, also called Waku). It has a Basecamp module for the desktop and an Android app, and the README calls it an alternative to the budgeting app YNAB (You Need A Budget).
What it does
- It keeps a zero-based envelope budget, which gives every unit of income a spending category. By the README's account, it has no server and no cloud custody of the finances.
- It syncs a household's budget directly between its devices over Logos Delivery. The README says the sync is end-to-end encrypted.
- It holds several budgets at once. Each is its own household with its own secret, topic and event log, and is shared by showing its QR code or pairing code.
- It records money as an append-only ledger, in which an edit is a new event and a delete is a marker event (a tombstone). Two people editing offline therefore end up with the same budget after sync.
- Its desktop view in Basecamp (
kym) runs over a core module (kym_core), and the same core can run headless, with no interface, underlogoscoreas an always-on hub. - Its Android companion app logs an expense quickly and reads photographed receipts with on-device OCR.
- It includes a command-line budget with accounts, categories, targets, bank import, reconciliation and reports.
Stage: Almost done. The README's status says the engine, contract, crypto, merge and both module builds "are green and cross-checked". It ends with "Needs real hardware to finish", naming the phone's receive path and OCR accuracy on real receipts. It adds that the mobile Delivery transport is still being stabilised on real hardware. The README does not say whether it is an official Logos project.
Use it
- In Basecamp, open Settings, then Package Repositories, and add
https://apps.vpavlin.xyz/logos-repo.json. - Install the two packages
kym_core(the core module) andkym(the view). - For Android, install the APK from the F-Droid repository at apps.vpavlin.xyz. It is built for arm64 phones.
- To try it without Basecamp, run
npm install,npm testandnpm run demoin the repository, then drive a budget withnode cli/kym.mjs.
The README does not name a Basecamp version.
Build it
npm installsets up the packages.npm testruns the engine and sync tests, andnpm run demoshows two partners editing one budget offline and then syncing.- The Android APK is built and signed locally with
scripts/build-apk.sh. - Releases are cut by pushing a
module-v*tag, after which CI builds the portable.lgxand refreshesrepo/index.json. The only tag so far is v0.8.0.
Releases
The latest tag is v0.8.0, dated 4 August 2026. module/metadata.json gives the kym view version 0.7.0, and kym_core/metadata.json gives kym_core version 0.8.1.
See also
Sources
- kym README, GitHub, last commit 10 October 2026
- module/metadata.json and kym_core/metadata.json, GitHub
- kym tags, GitHub
- release-module.yml workflow, GitHub