I originally wrote the code for this project as part of my commercial webapp project (FixMyDocuments.com), but I was so intellectually stimulated by the creation of this code, and so excited by the new design possibilities it opened up for me when it comes to working with LLMs, that I thought it would be a shame to have it "locked up" inside my app (which not many people are using in any case!).<p>So to bring this interesting piece of software to a wider audience and to better justify the amount of effort I expended in making it, I decided to turn it into a completely standalone, open-source project, which you can see here:<p><a href="https://github.com/Dicklesworthstone/mindmap-generator">https://github.com/Dicklesworthstone/mindmap-generator</a><p>It's all a single Python code file for simplicity (although it's not at all simple or short at ~4,500 lines!).<p>In addition, I wrote the linked blog post about the design considerations that went into it and the various engineering challenges I had to solve to get it to work. Although the basic idea of the project isn't that complicated, it took me many, many tries before I could even get it to reliably run on a complex input document without it devolving into an endlessly growing mess (or just stopping early).<p>There was a lot of trial and error to get the heuristics right, and then I kept having to add more functionality to solve problems that arose (such as redundant entries, or confabulated content not in the original source document).<p>Anyway, I hope you find it as interesting to read about as I did to make it!