Promoting open source projects

Checklist

Basics

Project name and description

If you want to successfully promote your open source project, the basics need to be right. Maybe you already picked a project name. In that case, there is not to do in that area. If not, it is important to select a powerful name that makes sense.

  • As short as possible
  • Easy to pronounce
  • Easy to remember
  • Domain name available
  • Gives away a hint on what the tool does

License

During many reviews, we saw a repeating issue: projects without a license. Even if you share the code, that doesn't make it automatically open source software. Users may actually be forbidden to use the software by law or company regulations. So if you like your software to be used by the community, provide at least a license.

There are many licenses available, often closely related. It is the fine subtilities that define what license matches the best with a particular project. For example, you want to ensure that every bit of code used from your project stays open. In that case, the GPLv3 license might be a good bet. If you rather want others to reuse your code and not restrict how it is used in other software, then Apache 2.0 could be a better match. Don't care how people use it, as long as they mention your project or your name? Then one of the BSD licenses makes sense.

Hosting

Hosting your open source project

SourceForge was a well-known location to host your open source project in the past. Nowadays, it is GitHub and GitLab that host most of the open source tools. While both look similar, it is GitHub that has hosts the most projects.

Going with GitHub for hosting is a safe bet. The first reason is that their domain has a high value to search engines. Another benefit is the public API. This allows external services to discover your project and see when new releases are available.

  • Use GitHub for publically hosting your project
  • Fill in the project description text (top)
  • Make it clear in one line what the tool is used for
  • Find the tags that are the best related to the tool and assign them to the project
Optimize the GitHub project

Promoting a project needs to be done on every location possible. If you decided to use GitHub to host your open source project, this is a great place to start with optimization. GitHub allows you to define a short description at the top. Some software projects only use the name of the project itself. Obviously, this is a missed opportunity. Start here to rewrite the description and explain the outcome for a potential new user.

Besides the description, GitHub allows up to 20 tags to be added. So if you created a security tool, add a tag and start typing 'security'. The website will show all tags starting with the typed word. Be creative in what tags you use, while making sure that they are relevant and used more often. It does not make sense if your tool is the only one using a particular tag.

  • Optimize the project description
  • Add relevant tags to the project

Packages

Check descriptions and status

When you optimized the description on GitHub, website, and other pages, it is time to review descriptions by others. The Repology project has software to gather the latest details on many types of packages. This includes the different formats for Linux, services like Brew for macOS, and ports on FreeBSD.