
Posting a project with an open source code is more than putting code on the Internet.
Interest in open source software has been growing for the past 10 years. Linux is in washing machines and combat drones. Most programmers cannot imagine their life without a wide range of free and open tools at their disposal.
The flip side of this remarkable trend is that when you release an open source project with new source code, you are in a zone of tough competition.
')
How can you help your project to be noticed?
Before you open any code, I answer the questions that are outlined in this article. But not necessarily in the same order.
You can follow each item of the checklist, or only parts of it. Remember the goal - to help others learn about your project, quickly figure out how to use it, and take part in it.
License
- Does your project have a license?
Without a license, your project is not open source software. Read more about it
here .
- Is this license approved by OSI / FSF?
Some licenses may look like they are suitable for licensing open source software. But they do not have that right. Check out the list of licenses approved by
OSI and
FSF .
- Is your license compatible with others in the ecosystem?
Check out what licensing projects have similar topics. Read more about license compatibility
here .
Site
- Does your project have a page on the Internet?
Readme on Gihub,
profile on SourgeForce or specialized
sites . Your project needs to have its place on the Internet.
- The visitor of the page will immediately understand what is it?
- Did you use visual elements?
Screenshots and diagrams - an easy way to capture the attention of the reader.
- Have you left your contacts?
Surely you will want to hear the thoughts of people who are interested in your project.
Availability
- Do you provide a way to spread the "native" programming language?
This can be
npm ,
gem or
crate . If your language has a package management system, your project must be registered to it.
- Can you suggest a distribution method for the * nix distribution?
The ability to install software from familiar sources is the pinnacle of your user's comfort. If you have time, take care of hosting your project for
Fedora ,
Debian / Ubuntu, or
Homebrew .
- Does it make sense to write an automatic installer?
Using the automatic installer, your project can be started and installed as easy as installing a package with regular tools. If creating a package doesn’t wash for your project, write an easy installer / installer (like
this or
this one )
Documentation
- Does your documentation start with a quick installation guide?
The easier it is to install and run your project, the more likely that someone will try it.
- Is the interface / API reference included?
In addition, to give the opportunity to "try" your project, the interface / API links are extremely important if someone really wants to use your product.
- Your documentation, in general, can be found?
Search functionality will make your documentation more useful. Even if it is only one page with ctrl-f in the browser.
- Should she explain how to create an environment for the developer?
Perhaps you want to mention how to build and debug your project for those who want to take part in its development.
Bugtracker
Even if you haven’t found any bugs now, make a few tickets for things you want to improve or do next time. You never guess who can find them.
- Does it include several tasks for beginners?
Do some really simple tasks to get those who are just starting to program for open-source projects. Dividing a function into two or deriving an additional command line argument is a wonderful task for those unfamiliar with the project code.
- Are all tasks well explained?
Make sure all tasks are well described, and other programmers can easily work with them if they are interested.
Instruments
- Does your project have autotests?
The test suite makes it easy to check changes for compatibility with the remaining project code for programmers who participate in your project.
At the start, attention, release!
If you answer yes to all questions, your project will be very successful among other open source projects. Do not worry if you fail to do everything - even small steps work for you.
And when the first developer comes and writes something in the code, do not forget to mark it like a dude from the “Big Lebowski”:
Just from IllinoisIf you know what else you can add to this list, write in the
comments to the article or on Twitter to the author of the article: @radekpazdera.