Skip to content

Latest commit

 

History

History

open_source

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

Open Source

We are aware of the power of open source and how it can help build better software. We continuously release small libraries we can extract from real projects and publish them trying to give something back to the community.

This is a guide on how to release, maintain and promote an open source project.

Create a new open source project

You don't need to be DHH to start an open source project, the varience of open source means that anyone with a text editor, terminal and an internet connection can help build some really cool things with really cool people. Just make sure you have the following points in mind:

  • Make something people want. Coming up with an idea is a great start, but also make sure that other people are as excited about it as you are. Otherwise you'll end up building something that solves your own needs and that's not what open source is about.
  • Your project must have a motivation, you need to create something useful for the world. Take a step back and re-focus about what pain points your project is solving.
  • Your goal is not build a finished product, start out by building the simples prototype possible.

Publish your code!

This is a really important part of the open source project development, a typical project will follow this steps:

1. Get your project on Github

We store all of our projects in Github. Github is home to more than 5 million open source projects for every skill set. It’s definitely the place where every developer can share their code with the world.

To get your project up and running in Github, you need to create a public repository up on Github

2. Document your project

We think a big part of building or collaborating on open source projects is that you may have a great code but with a great power, comes great responsibility. What we mean by that is try hard and then harder to document your project on a way a rookie could easily understand how the project works, runs and even how to collaborate.

We have a SAMPLE with the minimum sections you could have on an open source project, wheter you are the author or just collaborating. It may suffer changes due to the nature of the project but we have encounter this fits on almost everything.

Use the wiki

Must of the times you'll need to go into more detail with your readme, and that's what the wikis on Github is for, they help you break down documentation in your project in a useful way. Just add the links of the wiki in your readme file

Build an identity

Building an identity for your project can help you a lot with branding. You should definilty start by making a concise Github repository description that helps people discover and share your project. When your project is displayed on your Github Profile the description gets displayed there (also a concise message is really easy to copy/paste and share)

Then you can take an advantage of Github Pages they're free, easy to use and can be hosted directly from your Github Repository.

A good example of an open source branding would be Presentr.

Get an audience

If people don't ever find your project, they can't possible benefit from it, So this last step consist on getting your project in front of an audience. If you have a content marketing team talk with them, they could help you in this process or, if you don't, don't panic, post your project in the following pages:

  • Hacker News
  • Subreddit
  • Twitter You can use your organization account or your personal account
  • Reach out local and web communities. They can help you out spread the word

If your have a ruby project you can also post it here:

If your have a mobile project you can also post it here:

Collaborate on a project

A great way to get involved in open source is to contribute to the existing projects you’re using. You can easily find a project in this places:

Anyhow we think that things to keep in mind if you're someone that is collaborating on a project are:

  • Be passionate
  • Be kind
  • Be open to criticism
  • Document your library in a way your grandma could understand
  • Be respectful of someone's else feedback
  • Don't reinvent the wheel
  • And always have fun