DEV Community

Cover image for How to choose a license for your GitHub repository
OpenSource for WebCrumbs

Posted on • Updated on

How to choose a license for your GitHub repository

“Explain me like I’m 5!”

Imagine you made a cool toy, and you want to share it with your friends. But you also want to set some rules for how they can play with it. These rules are like licenses for open source projects. Here are some popular ones:

  1. public domain

    • This is like saying, "Play with my toy however you like! You can even say it's your own."
  2. mit license

    • You say, "You can play with my toy and even change it, but you have to say I made the first version."
  3. gnu general public license (gpl)

    • This one's like, "You can play and change my toy, but if you share your changed toy, you must use the same rules I did."
  4. apache license

    • It's like the MIT license, but you also say, "If you make a new version of my toy, tell everyone what you changed."
  5. bsd license

    • You say, "Play with my toy and change it if you want. Just remember to say I made the first one. And don't use my name to say your toy is the best."
  6. mozilla public license (mpl)

    • It's like saying, "You can play and change my toy, but if you make a new part, you need to share that new part with the same rules."

Now, which license you pick depends on how you want people to use and share your toy (or project). Some let others do almost anything, and some have stricter rules. It's up to you!


Our WebCrumbs is under MIT. It’s Wordpress for React. Check it here: GitHub Repo 😊

Top comments (10)

Collapse
 
samirmishra27 profile image
Samir

Let's say I let people play with my toy & make any changes to it. But if they make any changes / improvements to the toy, I can incorporate the same changes in my original toy. Then which licence is best to use?

Collapse
 
opensourcee profile image
OpenSource • Edited

Not an IP lawyer myself, but I’m thinking about your question. It seems to me that if you use a license that requires others to use the same license when they change it, then you could use it again and so forth. What do you think?

Collapse
 
samirmishra27 profile image
Samir • Edited

So if the other user has added a new feature to the toy or made an improvement, I could also add the same feature or improvement in my toy without any restriction right? Provided that the license must remain the same under the license terms.

Thread Thread
 
opensourcee profile image
OpenSource • Edited

It seems so, just the restrictions mentioned in the license. According to TLDR;Legal (loved the name of the website, btw):

GPL v.2:
You may copy, distribute and modify the software as long as you track changes/dates in source files. Any modifications to or software including (via compiler) GPL-licensed code must also be made available under the GPL along with build & install instructions.

Thread Thread
 
samirmishra27 profile image
Samir

Super thanks to you!
If I remember correctly there is also GPL v.3 out there too. Are there any key differences between v2 & v3?

Thread Thread
 
opensourcee profile image
OpenSource

This means there will probably be a third post! Let’s dig deeper! BRB

Collapse
 
opensourcee profile image
OpenSource

I guess it’s GPL, but better check it!

Thread Thread
 
opensourcee profile image
OpenSource
Collapse
 
opensourcee profile image
OpenSource • Edited

Our WebCrumbs is under MIT. It’s Wordpress for React. Check it here: GitHub Repo 😊 #hacktoberfest

Collapse
 
romw314 profile image
romw314

Your bsd license is BSD 3-clause license. Check this repo with the 2-clause one, which is similar to the MIT license.