3 ms·
Ask HN: What is the best license type for my open source project?
Hey HN,
I am working on a fun little React.js project that has been getting more developer interest than I initially expected, and I'm not exactly sure which license is the best for both users and maintainers.
I've created a simple content creator tool with a pretty nice interface, and it's free to anyone with no strings attached. I've noticed that there isn't much in regards to UI editors for React anymore, and the ones that do exist have become vendor locked and have funky tight wording within their licenses.
Now that my little side project has gotten a few views and contributors, I would like to make sure that we have an air-tight license that is in the best interest of both developers, and us contributors and maintainers.
I don't believe in putting "rate limits" and such within basic UI component libraries like a number of React content UI kits out there. But I'd also like to protect our own work from said UI kits forking our own code and then trying to implement those types of terms on their users.
I appreciate everyone's input and opinons!
Thank you in advance :)
- hoofhearted 3y agoFor anyone interested, I created our existing license using GitHub's tool. I'm not exactly sure how much legal weight it carries, or if it's even enforceable if I put my own language in it. https://github.com/elegantframework/elegant-cli/blob/v2.3/LICENSE.md https://github.com/elegantframework/elegant-cli/blob/v2.3/LI...
- themerone 3y agoYou should rename the license if you change the language. Enforceability is a question for lawyers to answer.
- hoofhearted 3y agoOh wow really!! I never even considered this! So are you hinting that the English license may not be enforceable in non English courts?
- themerone 3y agoThat is not what I mean. You can put things in a license that are not legally enforceable. You could add: "All users must sacrifice their first born child to the developer". No court in the world would enforce that license. This is a contrived example, but what is enforceable will vary in different legal jurisdictions. Things are not black and white, which is why it is incredibly common for their to be lawsuits disputing the meaning of validity of a license. This is why it is best to consult a lawyer before changing a license. It is important to rename a modified license to avoid confusion. If you tell someone your software is MIT licensed, but you modify the license, they might inadvertently break the terms because they are familiar with the MIT license, not your modified license. There are a lot of open source licenses out their, I strongly suggest finding that suits you best. Using your own licence might hinder adoption. There some people that don't consider a license open source in unless it is OSI approved. I don't agree, but it is a good idea to stick with OSI approved licenses.
- hoofhearted 3y agoOh, I believe I understand what you are saying now. Existing open source products on the market within the space I am working to evolve have basic MIT licenses that they have ammended with their own terms. Thank you for your input! I am going to go research OSI more in depth. I do actually want to open myself up to much larger Fortune 100 and government type clients who have stringent polices on what open-source projects they can use internally, and how they can host them. I've heard some rumors that tools like Drupal are still the approved standard for content creation within some organizations. Kind of like the COBOL of blogging.
- hoofhearted 3y agoCheck out this license for example: https://github.com/tinacms/tinacms/blob/main/LICENSE https://github.com/tinacms/tinacms/blob/main/LICENSE It's an Apache 2.0 license, but with addendums. Would it be reasonable to say that I could fork their repo for own purposes, and argue in court that I was only familar with Apache 2.0, and not their modified terms?
- version_five 3y agoIf you want people to use it, use MIT or Apache 2.0. It sounds like you want to limit how people can use it so they can't put their own restrictions on it - which would suggest a GPL license. But then people won't want to use it so it sort of defeats the purpose. Imo GPL is good for finished products that you don't want being closed up and sold commercially, but are useful on their own. Like LaTeX or Pandoc. If that describes your project, maybe it will work. For components that go into some bigger project, GPL is way to onerous a restriction as you're forcibly selecting the license of the finished project, so people will just not bother using your component.
- hoofhearted 3y agoAwesome! Thank you for the insight and advice. I am trying to accomplish as you described, without being greedy. Our finished project isn’t the money maker itself, and benefits the frontend community as a whole. I’m planning on following simple Laravel/Vercel strategy of revenue if the momentum keeps growing. I feel that we can build optional hosted service offerings around our own open source product, and if someone doesn’t trust us or want to use us, they can just freely host it themselves like open source should be :) The current content editors on the market seemed to have gotten a whiff of WordPress’ revenue, and started closing themselves off to their own platforms in the last few years. The end result is that it really has staggered innovation for us frontend devs, and some of the best options for building user docs for your app is to stand up and expensive siloed Wordpress instance.
- hoofhearted 3y agoCan I modify the language in the license to say “don’t do bad things” if I go with Apache 2.0 or MIT?