Setup Guide

Learn how to offer repository-related services, paid access to unique versions
of your code and setting up licensing options.

Man Reviewing documentation for paid licensing

About Paid Licensing

Offering another license is a great option to offer for your open source project. With ‘dual licensing‘, you offer your code in two separate repositories. Both have the same code, but with a different license. Usually the public repository will hold a copyleft license for free use, and the private repository will hold a more permissive license for paying users.

About Paid Licensing

The following is not legal advice and should not be treated or relied upon as such. Code licenses are binding legal documents that should be treated seriously. You are exclusively responsible for compliance with the terms of the license under which you use code, and it is always best to consult a lawyer before making licensing related decisions or use.

Licensing Explained

Different open source licenses provide different limitations on how users can use your code. Those limitations can make it difficult to use your code when creating commercial software. With dual licensing, you offer a free version of your code with those limitations and a paid version without them.

Open source licenses are usually divided into
two main categories:

Persona explaining to second person
People reviewing documentation

Dual Licensing Explained

To use dual licensing, you must comply with two major requirements. Both requirements MUST be met before proceeding:

GIF Select private Repository

Getting Started

You will need to keep two repositories on your Github account: 

Modifying Your Repository

Assuming you have the legal right to do so (see the above for a general explanation), change the public repository’s license to the copyleft license you chose (such as GPL). Then, edit the LICENSE text file in the repository root folder to the GPL version of your choice.

GIF Modifying your repository license on xs:code
GIF Import Public Repository

Import Your Public Repository

Add your public repository. Click ‘Add Repository‘ and follow the instructions. Your repository has to be public, and you’ll need to install our Read-only Github app on your repository for verification.

Create an Item for Sale

Let’s create your paid ‘license’ item and connect it to your private repository. In the repository editor, click ‘Add Item‘ and select the license component. You’ll need to install our Github app on your private repository, so we can clone your code to our servers. Users who purchase this component will get a unique read-only token to access your private repository with git, npm or pip.

GIF Add an item license
GIF Setting Pricing

Set a Price

Choose your item’s price and billing model:

We suggest offering your code with a reasonable annual subscription.
If you would like to learn more about our recommendations for services and features, please view our Selecting Services Guide.

Update Your README.MD on Github

Choose your item’s price and billing model:

The best place to promote your paid components, is on your README.MD file. Use our badge/banner to place a link to your xs:code repository page. This will help notify your users about the items you are offering. You can also use social media, blogs and developer community websites to promote your project.

GIF Update Your README.md file

Need any Help? Our Community Team is Here

Click on the chat icon or email us at [email protected]

open purple sign icon

Setting Up Your Items

Can’t decide what to offer? Read our guide on selecting the right model for you.


Technical Support

Our support team is here to help with any technical issue via chat or email.

marketing and promotion purple icon

Marketing and Promotion

There’s a lot you can do to get more paying users. Get our best practices and tips.

newsletter icon

Stay Updated and Subscribe to Our Newsletter

By submitting your email you agree to recieve emails from xs:code. We don't spam.