Carbure
Health Uyari
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 5 GitHub stars
Code Uyari
- network request — Outbound network request in portal/app.js
Permissions Gecti
- Permissions — No dangerous permissions requested
Bu listing icin henuz AI raporu yok.
Self-hosted household budget app: automatic bank sync (woob), auto-categorization, monthly budgets, trends, iPhone push alerts and a read-only MCP server for AI agents. Logiciel gestion budget familial gratuit
Carbure
English · Français
Your household budget, finally under control.
Bank accounts synced automatically, expenses categorized, budgets tracked day by day —
on the web and on iPhone. Self-hosted, free and open source.
💸 Free, no subscription · 🏠 100% self-hosted · 🙅 No third-party cloud
Budgets — spent, remaining and overspent per category |
Money flow — where the month's income goes |
👉 All the features, with every screen (in French)
Why Carbure?
- 🔄 No manual entry: transactions arrive on their own from your bank every day, through
woob — a direct connection, no third-party aggregator. Or import the
statements of your bank (OFX, QIF, CSV, CAMT.053): Carbure spots the duplicates first. - 🏷️ Automatic categorization: simple rules ("CARREFOUR → Groceries") sort every
transaction. A new one? Pick its category and Carbure suggests the rule. - 🎯 Monthly budgets: spent, remaining and overspent, category by category, at a glance.
Budget the sub-categories and their parent adds them up — or set its own amount. The
monthly flow shows where the money comes from and where it goes: click a category to
see its transactions. - 📈 Trends: income, spending and savings over 3, 6 or 12 months, compared with the
previous period or the same period last year. - ✅ Check-off: verify transactions in one click and filter those still to review.
- 🔁 Recurring transactions: salary, rent, subscriptions and bills are spotted on their
own; see at a glance those still expected this month. - 🔔 iPhone alerts: a push after each sync, as soon as an expense exceeds the threshold
you set, or when a rule you chose matches. - 📊 Insights: your own monthly indicators (groceries, fuel, subscriptions…).
- 👨👩👧 Built for households: several users, shared accounts and data, each with their own
language and devices; an administrator manages accounts, categories, rules, users and the
configuration, and copies the ready-made command that schedules the sync. - 🤖 Ask your AI agent about your money: a built-in, read-only MCP server — which you can
turn off — answers questions like "how much did we spend on restaurants this year?" or
"which budgets are we over?". Claude (web, Desktop, mobile) connects from the server URL
alone, after your approval in the portal; Claude Code, ChatGPT, Cursor, Copilot and Gemini
with an access token. - 🔒 Everything stays with you: Carbure runs on your own server (a NAS is enough). No
account to create, no aggregator, no cloud: your bank credentials and data stay in your
local database. The only outbound connections are to your bank (woob) and, if you enable
them, Apple's push notification service.
🌍 Bank coverage: Carbure relies on woob modules, which mainly
cover French banks. The portal is available in English and French; amounts are in euros.
📱 iPhone app: the Carbure iOS app will soon be available on the App Store.
How does it compare?
| Carbure | Firefly III | Actual Budget | Kresus | |
|---|---|---|---|---|
| Bank connection | Direct, via woob | Third-party aggregators | Third-party aggregators | Direct, via woob |
| Sub-categories adding up to their parent | ✅ | ➖ | ⚠️ | ➖ |
| Several users sharing the same data | ✅ | ⚠️ | ✅ | ➖ |
| Native iPhone app and push notifications | ✅ | ➖ | ➖ | ➖ |
| Built-in MCP server for AI agents | ✅ | ➖ | ➖ | ➖ |
| File import (OFX, QIF, CSV, CAMT.053) | ✅ | ✅ | ✅ | ⚠️ |
| Several currencies | ➖ | ✅ | ➖ | ⚠️ |
✅ yes · ⚠️ partly · ➖ no — 👉 Full comparison (in French):
23 criteria (hosting, bank data, budget, household and devices, API), with the strengths of
each tool.
How it works
flowchart LR
bank[(Banks)] -->|woob| sync[Sync]
subgraph Carbure
sync --> rules[Categorization<br/>rules] --> db[(MariaDB)]
api[PHP REST API] <--> db
end
portal[Web portal] <--> api
ios[iOS app] <--> api
ai[AI agent] <-->|MCP| api
sync -->|APNs| push[iPhone notifications]
Quick start
With Docker (nginx, PHP and woob included):
git clone https://github.com/ltoinel/Carbure.git && cd Carbure/docker
docker compose up -d
Open http://localhost:8080/: the setup wizard handles everything (database,
administrator account, and optional starter categories, rules and insights) in three
clicks, with no command to run. Database upgrades are
automatic too. On a Synology NAS, follow the
tutorial.
👉 Detailed installation, configuration, API reference, data model and security:
the documentation (in French).
Contributing
Contributions are welcome: read AGENTS.md (conventions, tests, definition of
done) and the open tasks in TODO.md. Found a bug or have an idea?
Open an issue. If Carbure is useful to you,
a ⭐ helps others find it.
To develop, ./start.sh starts the development environment with Docker: the production
image and MariaDB, the code of the repository mounted live and a sample household
(http://localhost:8000/portal/, admin / admin-password). The tests (PHPUnit, portal
unit tests, Playwright end-to-end tests) are described in the
developer documentation (in French).
License
MIT © Ludovic Toinel
Third-party components
The Docker image bundles third-party software, unmodified, under its own license:
| Component | License | Source |
|---|---|---|
| woob (bank synchronization) | LGPL-3.0-or-later | gitlab.com/woob/woob (version set by WOOB_VERSION in docker/Dockerfile) |
| curl_cffi | MIT | github.com/lexiforest/curl_cffi |
| PHP, nginx, Alpine Linux | PHP License, BSD-2-Clause, various (BusyBox: GPL-2.0) | Official images php:8.3-fpm-alpine |
| Vue.js, CodeMirror, Roboto, Material Icons (portal) | MIT, MIT, OFL-1.1, Apache-2.0 | portal/vendor/ |
Carbure calls woob as a separate program; it can be replaced by another woob version
(virtual environment /opt/woob).
The music of the teaser is
"Nowhere Land" by Kevin MacLeod (incompetech.com), licensed
under Creative Commons: By Attribution 4.0.
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi
