oss image

Open source promotion cheat sheet

> This cheat sheet summarize important steps you should follow to promote your open-source project in the best conditions. List of availables languages: - [English](./README.md) - [Français](./README-fr.md) A language is missing ? Want to improve this cheat sheet ? [Contributions are welcome](./CONTRIBUTING.md) !
## 1. 🎒 Preparation step
😎 Choose a cool name for your project

> Choose a name users can easily remember. It must not necessarly includes keywords related to the technology you're using within your project (ex: [bento-starter](https://github.com/kefranabg/bento-starter)).

πŸ’… Make your README pretty

> README is the first thing your user will see. Make it simple, pretty and easy to read. [Here is a list of beautiful READMEs](https://github.com/matiassingers/awesome-readme).

πŸ’ͺ Highlight strong points of your project

> Identify your project strengths and make sure visitors see them at first.

✨ Provide a demo of your project

> Vistors will want to quickly understand the purpose of your project, how it works and how to use it. Providing a demo is the best way to satisfy users. It could be: - An animated GIF demonstrating how your project works - A link to a live demo

πŸ‘Œ Insall/Usage must be super easy

> You'll probably lost users if your project is not user friendly.

πŸ“˜ Create a clean and well structured documentation

> Creating a good documentation is probably the most important step. If you have a small documentation, you can directly include it in your README. Otherwise, you should probably host it in a separate website. Projects like [vuepress](https://v1.vuepress.vuejs.org) helps you creating clean documentations in a simple way.


## 2. πŸ“’ Spread the word about your hard works
⭐ Make your project trustable before publishing to social networks

> A minimum amount of stars makes your project more trustable than a project with zero star. Ask people you know to support your project before doing a public announcement on social medias.

↗️ Share the project on social medias an specialized platforms

> Tell the world about your awesome work! Publish on social medias and specialized platforms: > > - [Twitter](https://twitter.com) > - [Linkedin](https://www.linkedin.com/) > - [Facebook](https://www.facebook.com/) > - [Reddit](https://www.reddit.com/) > - [Dev.to](https://dev.to/) > - [Lobsters](https://lobste.rs/) > - [Hacker News](https://news.ycombinator.com/) > - [Product Hunt](https://www.producthunt.com/) > - [Beta page](https://betapage.co/) > - [Human Coders](https://news.humancoders.com/)

πŸ“ƒ Write articles that mention your project

> Write articles about your project. Purpose can be the technical stack you used, how your project works, problems you encountered, etc. Publish your articles to [medium](https://medium.com/) or [dev.to](https://dev.to/).

🎀 Present your project at conferences/meetups

> Presenting your project at conferences or meetups is a good way to improve its visibility.

πŸŽ₯ Record and publish videos presenting your project, how it works, etc

> Recording a video is not an easy execise. However it's probably the most efficient way to make your project famous.

πŸ• Choose the best time to publish on social medias

> Don't publish during holidays period or weekends. Usually the best time to publish on social networks is mid-week.

πŸ—‘ Don't spam platforms with your promotion

> Don't publish twice on the same platform. It will be considered as spam and might cause bad publicity for your project.


## 3. 🀝 Keep your users
πŸ†• Try to regularly release new versions of your project

> Maintain and improve your project with new releases. Generate changelogs is also a best practice, it allows your users to know about the latest changes.

❗ Maintain your project, process opened issues

> Do not let opened issues without response. Be nice with people that took time to open issues πŸ˜‰

πŸ™ Invite users to contribute

> A healthy project is a project with a community and contributors. Let your users know that you need help by tagging some issues with `contribution welcome` or `good first issue` labels.

πŸ† Reward contributors

> Be nice with people that helped you! Some open-source projects like [gatsby](https://github.com/gatsbyjs/gatsby) reward contributors with goodies. If you can't afford that, do a public post (on twitter or other platforms) about the contribution and mention the author ([here is an example of tweet](https://twitter.com/FranckAbgrall/status/1139470547492978688)). Open a `Contributors` section in your README to publicly thanks them (ex: [vuepress contributors section](https://github.com/vuejs/vuepress#code-contributors)).

πŸ’¬ Open a community chat platform

> Github issues are not always the best way to communicate with your users. Use chat platforms to discuss with them: - [Discord](https://discordapp.com) - [Slack](https://slack.com) - [Gitter](https://gitter.im/)

πŸ”™ Ask for feedback

> User's feedback is the best way to improve your project. They probably have features and ideas that could make your project better.

❀️ Open a use case gallery to show what users built with your project

> Visitors will trust your project if they see concrete use case and success stories (ex: [vuepress gallery](https://vuepress.gallery/)).