Why I'm Charging What I'm Charging

This is a post I've already rewritten a couple of times. Initially, I wanted to post it end of December last year, in response to a discussion on Discord. But the more I thought about it, the more I realised that there’s more to this topic than I initially anticipated.

So, what is this all about?

With release 2.0.0 of nut.js I made the decision to charge money for the @nut-tree/nl-matcher plugin.

Why did I make this decision?

Because the whole refactoring and the new plugin to achieve full Apple Silicon support took me several month to build + I had to make a financial sacrifice to get ahold of an Apple Silicon machine. I do love open source, but at that point I had to draw a line, regarding both time and money invested. So I decided to charge for the new plugin, (which is faster than the initial one, compatible with a wide range of node and Electron versions and also works with Apple Silicon chips), to cover some of my spendings.

Since I made this decision, I've been continuously attacked that it would be too expensive, that I'd only be in for the money, or that I wouldn't carry the open source mind set by charging for my plug-ins.

Funny enough, I've also received inquiries from (really big) companies for release dates of security fixes. Or startups, asking me to help them package their Electron application which uses nut.js. Alternatively they were asking for help with code related problems.

What all of them have in common?

Everyone of them was offended as soon as I mentioned that I'm not going to work for free for any company, just because they're using my framework. Also, none of them cared to sponsor my work, even though they were building products around it. Overall, this is fine, that's also what the license I chose permits, but if you want me to fix your problems, you better think about proper reimbursement.

I do understand that 40$ per month is quite a lot of money for many people. On the other hand, I designed nut.js in a way that it's easy to build and use your own plug-in with it. There's even a full plug-in on GitHub to take a look at. If you don't want to spend money on a ready-to-use plug-in, you could build your own. If your time is too precious to invest it into building that add-on yourself, why do you think I should give away mine for free?

All of the work I'm putting into nut.js happens some time between 10p.m. and way after midnight. At times it feels like I'm working two jobs. I'd love to open source all my plug-ins, but since they're the only way to get people to sponsor my work, it's also the only way to justify to my family why I sit in front of the computer late at night.

If many people all sponsor a small amount, I'd not have to gate-keep my plugins with 40$ per person. That'd be great for all of us!

Let's hope for the best and thanks for reading.


nut.js in a nutshell