One of the requirements for GitHub Actions Hackathon is to have an Open Source license.
Truth be told, I don't often Open Source projects. I normally keep them closed, just because I prefer the extra privacy it offers.
If I do open source something, I'd throw up the MIT license & forget about it. However for my GitHub Action I'd quite like to be able to charge for usage, while remaining open source so picking the right license is somewhat important.
Off the bat, I have zero knowledge of what kind license would work. Ideally I want something where I can share the code, but if people are making mad money they give me a slice of pie. So I went in search of what other projects do!
Flickity is made by Metafizzy, they're pretty inspirational. I heard them a few years ago on the Indie Hackers Podcasts discussing selling open source software. It definitely gave me the thought of "If they can do it, so can I".
Their approach was is to have Commercial license & Open source license (GPL-3.0), then tell using the library on commercial products they must buy a license.
I really like the way the communicated the requirements to users & used Gumroad to handle the selling of license keys, though it's a little unclear how the license is enforced.
Heya is a Ruby gem for managing campaign emails in Rails. It's pretty handy!
They have used a Prosperity Public License, which is similar to what Flickity has done but only requires a single license, which is pretty neat!
Like Flickity, they've also used Gumroad for handling the licensing, though it looks like they've added some extra magic to make sure licenses are validated.
Sidekiq is a background worker manager popular in the Rails world, it's is AWESOME! They offer a Pro & Enterprise version, which offer some extra features along with a more commercial friendly license.
Interesting Sidekiq appear to handle billing themselves (and ask almost $1000 a year for a license 🤯), but from what I gather after purchasing a license users are given a special URL to pull down a unique version of the gem.
I'm going to use the Prosperity Public License for my GitHub Action & request commercial products buy a license after 30 days.
I'm also going to experiment with Gumroad as it seems the popular choice managing sales. I think also I'm not going to mess about with setting up subscriptions, instead I'm going to just ask for a few dollars in a one time payment & see if anyone purchases.