Mobile apps

Snapshot 2026-08-03 23:56:39 UTC · version 1

published
INDEXABLE MARKDOWN SNAPSHOT

Research document

Open canonical .md

Beancount.io

Agentic plain-text accounting, from every surface you work in.
Open-source web and mobile clients, a Python CLI and reporting library, and skills for coding agents.

⭐ Star on GitHub · Web app · Mobile apps · Start building · Contribute · Roadmap · Issues

Turn a plain-text ledger into reports you can explore — open the live example.

Beancount.io is a developer-friendly workspace for Beancount ledgers. Your books remain readable plain text while the surrounding tools add polished reports, transaction entry, Git-backed collaboration, automation, and access from the browser, phone, terminal, or a coding agent.

Mobile apps

Review your finances, add transactions, scan receipts, and edit ledger files from the native Beancount client. The same open ledger remains available from the web, terminal, Python, and agent workflows.

 

Explore the mobile product tour or run the Expo app locally.

Why developers build with it

  • Open, inspectable data — ledgers are text files that work with Git, scripts, editors, and the wider Beancount ecosystem.
  • Useful at every layer — use the finished interfaces, automate local .bean files from Python, or build new workflows on the parsing and reporting library.
  • Modern, typed stacks — React 19, React Native, TypeScript, GraphQL, Python 3.12, strict type checking, and package-scoped CI.
  • Agent-ready workflows — the CLI and reusable skills give coding agents structured ways to create, validate, query, and update ledgers.
  • MIT licensed — clients, developer tools, and libraries can be studied, adapted, and extended.

What is here today

Package Status What you can build with it
dashboard/ Active web client Ledgers, journal, reports, Monaco editor, imports, collaboration, and an AI assistant. React 19 + TanStack Start + Apollo.
mobile/ Active iOS & Android client Native transaction entry, account views, receipt capture, ledger editing, light/dark themes, and 13 locales. Expo + React Native + Apollo.
cli/ 0.1.0 Read and write directives, check and format files, run BQL and reports, manage remote ledgers, or chat with a local-ledger agent. Python + Typer.
fava-slim/ 0.1.0 Load and filter ledgers, build account trees, query data, and generate financial statements without the Fava web UI. Typed Python.
skills/ Active skills The agent-native accounting loop: scaffold a ledger, import bank exports with dedup, author tested beangulp importers, reconcile against statements, migrate from Mint/Monarch/QuickBooks, query your finances in plain language, run a month-end close, and record options trades — all confirm-gated and bean-check-verified.

The dashboard and mobile app are clients for the hosted Beancount.io API. The backend behind that API will be open-sourced soon. The CLI, fava-slim, and ledger skills also support local-first workflows that do not require the hosted service.

Choose your entry point

There is no root package to install. Each package owns its dependencies and checks.

Web dashboard

Requires Node.js 22, Yarn 4 through Corepack, and a Beancount.io API endpoint.

cd dashboard
corepack enable
yarn install --immutable
cp .env.example .env
yarn dev

The app runs at http://localhost:5173. See the dashboard setup guide for environment variables and architecture.

Mobile app

Requires Node.js 20.19.4 or newer and Yarn Classic.

cd mobile
yarn install
yarn start

Expo will guide you to iOS, Android, or a connected device. See the mobile development guide for the full workflow.

CLI and Python tooling

Requires Python 3.12 and uv.

cd cli
uv sync --all-groups
uv run beancount-cli --help

The CLI reference covers local reads and writes, validation, formatting, queries, reports, authentication, and ledger management. Library contributors can start independently in fava-slim/.

Quality bar

Every active package has path-filtered CI so unrelated changes stay fast:

Package Run before opening a PR
Dashboard cd dashboard && yarn format:check && yarn lint && yarn test && yarn build
Mobile cd mobile && yarn lint && yarn typecheck && yarn test:unit
CLI cd cli && make check-all
fava-slim cd fava-slim && make check-all

A repository-wide secret scan also gates every push and pull request.

Contributing

Contributions are welcome across product UI, accounting workflows, accessibility, translations, tests, Python tooling, and agent skills. Start with the contributing guide, browse open issues and the public adoption roadmap, and keep changes focused on one package when possible.

If Beancount.io is the kind of open, programmable finance software you want to see more of, star the repository and help more developers find it.

Community

License

MIT © Beancount.io

MARKDOWN METRICS
988words
11headings
20links
3code blocks
MDRSS ASSESSMENT
Evidence46/100high confidence
Why MDRSS assigned this score
  • Production catalog audit 2026-08-04
  • Taxonomy classified from title, annotation, source and Markdown signals
  • Agent usefulness evaluated from structure, procedures, examples, evidence and retrieval value
Evidence (1)

Discussion 0

Sign in to join the discussion.