Wow, very cool project. It’s impressively fast! It’s currently not usable 
for me due to the surrounding ecosystem and plugin support, but 
nevertheless, this is very promising!

I’m curious:

   - Roughly how many hours did it take to go from zero to this state? 
   - I assume this was largely AI-assisted? If so, what inputs did you 
   provide (current Beancount repo, v3 docs, design notes, etc.), and what was 
   the AI technology used? 
   - How helpful was AI for the frontend work? Did you reference Fava in 
   the process? 

A few architectural questions:

   - Why not expose a Python interface so existing plugins can be reused? 
   In my experience, plugins don’t materially impact performance. 
   - Fava has accumulated a large feature set over many years. Would 
   integrating with Fava be difficult? Given that it now makes fewer direct 
   Beancount library calls, could this be handled by constructing the expected 
   Python data structures instead of protobufs? 
   - Similarly for Beanquery: how complex would integration be, and what 
   would the expected performance tradeoff look like? 


​
On Tuesday, February 24, 2026 at 5:21:48 AM UTC-8 [email protected] 
wrote:

> Hi all,
>
> I'd like to share a project I'm working on: A from-scratch implementation 
> of
> Beancount that is fast and independent of the Python ecosystem.
>
> https://github.com/themoritz/turbobean
>
> *Why?*
>
> I love Beancount, but as my journal has grown, processing takes a 
> considerable
> amount of time. I came across the Beancount Vnext: Goals & Design 
> <http://furius.ca/beancount/doc/v3> document
> which talks about how to address this with re-implementing the core in 
> C++. And
> since Martin has so little time working on Beancount these days, I thought 
> why
> not work on this evolved version of Beancount myself? I added some of my 
> own
> design ideas to the mix and the result is TurboBean.
>
> *Philosophy*
>
> My vision is to have this very minimalist and fast core Beancount
> implementation that is not tied to any language or ecosystem. It has some
> essentials included (in particular the LSP) to get started quickly but then
> mainly just interfaces with other languages via Protobuf.
>
> - Single binary, zero dependencies. You download one small binary and it 
> just
>   works — no Python environment, no pip, no virtualenvs.
> - Instant processing. Even large journals are parsed and processed in
>   milliseconds.
> - Plugins in Lua. Extend and customize processing without the overhead of
>   a full Python runtime.
> - Interop with other languages. Just use templating to generate .bean 
> files.
>   Pipe the output of processed transactions into any other language via
>   Protobufs.
> - LSP and formatter built in. Every editor gets first-class support out of 
> the
>   box — jump to account definitions, hover for balances, auto-completion 
> and
>   renaming for accounts/tags/links.
> - Practical Web UI included. A built-in web server gives you basic journal,
>   balance sheet, and income statement views to get started quickly. 
> Similar to
>   Fava.
>
> *Compatibility*
>
> TurboBean aims to be as compatible with existing .bean files as possible. 
> Most
> files should work without changes. Where breaking changes exist, they stem 
> from
> the redesigned booking system inspired by Vnext. The key changes are 
> described
> in this document 
> <https://github.com/themoritz/turbobean/blob/master/docs/inventories.md>.
>
> *Current Status*
>
> The project is at a point where I use the LSP for editing all my .bean 
> files
> and the Web UI for basic reports.
>
> I plan to work next on Lua plugins, the formatter as well as Protobuf 
> output.
>
> The project is definitely still exploratory so it would be great to have 
> people
> play with it, and get feedback on design decisions since that's always the
> toughest part.
>
> Best,
> Moritz
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Beancount" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/beancount/fd07f568-032a-49e0-a805-53096590e913n%40googlegroups.com.

Reply via email to