Blog Header
Nevo David

How to write a converting file for your library

June 28, 2023

Nevo David

It doesn't matter how good your marketing is or how many people promote you; in the end, all visitors go to your GitHub page - in traditional marketing, we can call it a landing page or a sales page.

They will usually decide within 10-20 seconds if your offer fits their needs.
In this tutorial, I will focus mostly on consumers, not contributors, as they have different agendas.

So what do people usually look at? (in the following order):

  • What do you do?

  • What is the programming language you used?

  • Do you have SDKs for other languages if it's not their programming language?

  • How many stars?

  • Are there open issues?

  • When was the last commit?

  • Is there documentation on how to use it?

  • Use cases - add even companies if you can.

  • Are there good examples (snippets)?

  • Is there a self-hosted solution (if it's not a stateless library), or is there a Docker file?

  • What integrations do you have?

  • Is there a community around the library/company?

  • What is the license of the library - not a lot of people understand it, but you should aim for MIT.

There are a lot of other factors, but let's focus on those. If you can solve those problems, you won't lose traffic.

Here is how your README file should look like in the following order:

  • Library name

  • Horizontal bullets of your other SDKs if you have

  • a link to the documentation

  • A description of your products, you can write a lot, and you don't have to have a one-liner.
    Make it down to earth so people can understand.

  • Write how other people are using the library.

  • Write snippets as much as possible, or send people to a quick start guide page.

  • If it's a self-hosted solution, try to provide some links to dockers or a one-click button to deploy it with Heruko or DigitalOcean, you can even add a GitPOD option.

  • Write all your current integrations if you have one.

  • Offer people to join your Discord or additional support by opening an issue on GitHub.