1
4 Comments

Choosing An Open Source License

Hey indie hackers,

I'm building a fullstack job orchestration/background job platform in .NET called Didact, and it's already been an interesting journey. Didact is open source, so, of course, one of the first things that I had to figure out was how to license it in the first place. I was rather surprised how confusing this was at first glance.

So here's a few tips on what I found:

Choosealicense.com

Choosealicense.com is an awesome website to learn about how open source licenses work, I found it very helpful in gradually understanding what license to pick.

Plausible Analytics

I also found this blog from Plausible Analytics insightful and helpful.

TL;DR;

  • Is it a library/module/package? GPL3.0 or LGPL3.0.
  • Is it a standalone application/platform? AGPL3.0 (to cover cloud cases)

Explanation

Here is my hard and fast rule that I learned from r/OpenSource on Reddit:

Assuming you want to de-incentivize copycats and corporations from straight up copying and reselling your work with no contributions to you or the open source community (which is the case for me), here's what I asked myself:

  • Is what I'm building a library/package/module that is included in a larger software work? Use GPL3.0 or LGPL3.0 for your license. For example, two very well-known background job libraries called Hangfire and Sidekiq use this licensing as their default (emphasis added to the word library because this is what makes Didact quite different from them).

  • Is what I'm building in and of itself a complete, standalone application or platform? Then use AGPL3.0 for your license because - chances are - you or someone else could probably offer your product or platform as a cloud product, and you don't want to miss out on that!

For me, Didact is an entire application/platform with a pre-built web dashboard, a pre-built backend .NET web API, and a pre-built .NET console app all existing in separate GitHub repos and all completely independent.

Hope that helps you!

posted to Icon for group Open Source
Open Source
on August 9, 2023
  1. 1

    Actually, choosealicense explains it well: pick a license that is used most by the community you target. For example, if your community is users of Apache Foundation or CNCF software, pick Apache 2.0 license.

    Personally, I would not pick copyleft licenses like *GPL, as they are incompatible with some other licenses and thus result in lesser software adoption.

    1. 1

      Thanks for the input! I disagree, though. GNU licenses help protect open source creators and encourage open source contribution, whereas something like the Apache 2.0 license or MIT license would not stop corporations from abusing the open source work. There's nothing wrong with using GNU licenses.

      I also emphasized in my article that my tool, Didact, is a standalone application; it's not meant to be a library incorporated into your larger software work, so I see no issue in licensing incompatibility. It's so much so of a standalone application that I plan to offer it as a cloud service, in some ways not too different from Plausible Analytics and other such open source AGPL3.0 cloud services.

      So I remain confident in my licensing decision. If I was building a library for others to incorporate into their larger software works, then I would reconsider using a GNU license, but that is not the case for me.

      1. 2

        Thank you for the elaborated reply, I see your point. I don't doubt your decision for your project, however I would warn people of blindly picking *GPL licenses e.g. for their libraries without understanding the consequences.

        I believe licensing is a tough topic, there is no silver bullet. I hope your license will work for you best, keep the community posted how it goes 🙌

        1. 1

          Yeah you're right, I'll make an effort to clarify myself better next time I mention licensing! Especially for people building libraries, definitely agree with what you're saying.

          Thanks igorz, will post again soon!

  2. 1

    This comment was deleted 2 years ago.

Trending on Indie Hackers
I spent $0 on marketing and got 1,200 website visitors - Here's my exact playbook User Avatar 58 comments Veo 3.1 vs Sora 2: AI Video Generation in 2025 🎬🤖 User Avatar 27 comments Codenhack Beta — Full Access + Referral User Avatar 21 comments I built eSIMKitStore — helping travelers stay online with instant QR-based eSIMs 🌍 User Avatar 20 comments 🚀 Get Your Brand Featured on FaceSeek User Avatar 18 comments Day 6 - Slow days as a solo founder User Avatar 16 comments