Will open source Lua-WinAPI binding for money

A few months ago, I had the terrible idea of binding the entire Windows API to Lua, and creating a convenience API layer on top as a sort of AutoHotKey replacement, because I had seen many AHK requests asking for AHK but in an easier language, and the typical answer was to just learn AHK. It had me thinking there could be a market.

So I downloaded the Windows API .winmd file, learned how the projections are designed, downloaded ILSpy and explored the APIs manually, installed the System.Reflection.Metadata package, learned C#, and slow wrote about 2k lines of code which consume the API metadata and emit 300+ files of C and C++ that take about 15 minutes to compile, which bind the Windows API to Lua very carefully.

The process started at the beginning of August, and lasted until about November, when I switched to designing the website, and emitting doc pages for each item in the Windows API, comprised of functions, callbacks, typedefs, structs, and unions. The Node.js script that creates this website takes under 1s to run, and produces 146,952 pages as of the time of this article being written.

This was a stupid idea and a bad business model. I spent a total of about 1,000 hours creating this, and I am proud of what I have carefully crafted, and convinced that it is genuinely useful. But developers do not pay for automation tools. I think the WinAPI Lua bindings alone are useful enough that they could be open sourced and used as a starting point for multiple types of convenience layers, whether something like Love2d or AutoHotKey as I tried to do.

It's also true that LuaJIT could also do this with a lot of work, but LuaJIT is a different version of Lua than Lua 5.4, and has a different set of packages available to it. It's a sad fact that the Lua community is badly spit, but it's also a fact that PUC Lua is still the official Lua. And in my personal opinion, PUC Lua has a much cleaner design.

I do not personally care if this code dies with me. I'm sure some other talented person can recreate it with enough time. And it's not like it's the cure for cancer. It's just C/C++/C# code. So, despite the fact that I have not yet made a single sale, I will not be open sourcing lowkPRO until I am recompensated for my time. I think $50/hour is reasonable for my level of ability, so once I make $50,000 from sales, I will open source it. And if that never happens, so be it. I am proud of my code, but I don't need recognition for it. Given the current 0 sales, this is unlikely to happen.