modularidea52 downloadsIHateMoney + Cospend Client: view/edit Bills, Auto-categorisation, stats, PDF/Excel-export.
An Obsidian plugin for IHateMoney — view and edit shared-expense bills, auto-categorize them, and get statistics/exports, without leaving your vault.
IHateMoney itself has no category field for bills (this has been an open upstream request since 2011). This plugin solves that client-side: it classifies bills automatically from their title (keyword/fuzzy matching, trainable), and stores the category mapping as a plain JSON file inside your vault — which means it syncs across your devices for free, using whatever sync you already use for Obsidian (Obsidian Sync, iCloud, Syncthing, Git, ...). No account, no extra server.
Beta. Expect bugs. Please report them via GitHub Issues. Provided as-is, without warranty or liability.
.obsidian/'s plugin storage, so it rides along with your normal Obsidian syncobsidian://ihm-tracker-open?... deep link to jump
straight into a project from an iOS Shortcut / Android shortcut iconisDesktopOnly: false) — no Node-only APIs, all network
access goes through Obsidian's own requestUrl()Install via Obsidian Community Plugins, or manually:
main.js, manifest.json and styles.css from the
latest release<your-vault>/.obsidian/plugins/ihm-tracker/ and put the three files in itCategories are inferred automatically from bill titles; correcting one trains the classifier for next time. Nothing here is sent anywhere except your configured backend.
Stock IHateMoney has none of these — this plugin's vault-file category sync works fully without them. If you self-host, the fork modularidea/ihatemoney-cat adds them to the server, wire-compatible with Cospend/MoneyBuster: categories set by one user show up (and train the classifier) for everyone, payment methods and repeat rules become available in the bill form, and the IHM web UI gets a page to manage categories and payment methods. The plugin detects the fork automatically after the first sync.
See server-patch/ for a Dockerfile and what exactly the plugin uses.
npm install
npm run dev # esbuild watch
npm run build # typecheck + production build
npm test # vitest
Symlink this folder into a test vault's .obsidian/plugins/ihm-tracker/, run npm run dev, and
reload the plugin in Obsidian (Cmd+R or the plugin-reload command) to see changes live.
See CONTRIBUTING.md for the project structure and module ownership rules.
0BSD — do whatever you want with it.