Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
.DS_Store
.jekyll-metadata
_site/
.bundle
bin
vendor
12 changes: 12 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Contributing

## Running the site locally

This site is powered by [Jekyll](jekyllrb.com). Running it on your local machine requires a working [Ruby](https://www.ruby-lang.org/en/) installation with [Bundler](http://bundler.io/).

Once you have that set up, run:

script/bootstrap
script/server

…and open http://localhost:4000 in our web browser.
4 changes: 4 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
source "https://rubygems.org"

gem "github-pages"
gem "rake"
132 changes: 132 additions & 0 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
GEM
remote: https://rubygems.org/
specs:
activesupport (4.2.7)
i18n (~> 0.7)
json (~> 1.7, >= 1.7.7)
minitest (~> 5.1)
thread_safe (~> 0.3, >= 0.3.4)
tzinfo (~> 1.1)
addressable (2.4.0)
coffee-script (2.4.1)
coffee-script-source
execjs
coffee-script-source (1.10.0)
colorator (0.1)
ethon (0.9.0)
ffi (>= 1.3.0)
execjs (2.7.0)
faraday (0.9.2)
multipart-post (>= 1.2, < 3)
ffi (1.9.14)
gemoji (2.1.0)
github-pages (90)
activesupport (= 4.2.7)
github-pages-health-check (= 1.1.2)
jekyll (= 3.1.6)
jekyll-coffeescript (= 1.0.1)
jekyll-feed (= 0.5.1)
jekyll-gist (= 1.4.0)
jekyll-github-metadata (= 2.0.2)
jekyll-mentions (= 1.1.3)
jekyll-paginate (= 1.1.0)
jekyll-redirect-from (= 0.11.0)
jekyll-sass-converter (= 1.3.0)
jekyll-seo-tag (= 2.0.0)
jekyll-sitemap (= 0.10.0)
jemoji (= 0.7.0)
kramdown (= 1.11.1)
liquid (= 3.0.6)
listen (= 3.0.6)
mercenary (~> 0.3)
rouge (= 1.11.1)
terminal-table (~> 1.4)
github-pages-health-check (1.1.2)
addressable (~> 2.3)
net-dns (~> 0.8)
octokit (~> 4.0)
public_suffix (~> 1.4)
typhoeus (~> 0.7)
html-pipeline (2.4.2)
activesupport (>= 2)
nokogiri (>= 1.4)
i18n (0.7.0)
jekyll (3.1.6)
colorator (~> 0.1)
jekyll-sass-converter (~> 1.0)
jekyll-watch (~> 1.1)
kramdown (~> 1.3)
liquid (~> 3.0)
mercenary (~> 0.3.3)
rouge (~> 1.7)
safe_yaml (~> 1.0)
jekyll-coffeescript (1.0.1)
coffee-script (~> 2.2)
jekyll-feed (0.5.1)
jekyll-gist (1.4.0)
octokit (~> 4.2)
jekyll-github-metadata (2.0.2)
jekyll (~> 3.1)
octokit (~> 4.0)
jekyll-mentions (1.1.3)
html-pipeline (~> 2.3)
jekyll (~> 3.0)
jekyll-paginate (1.1.0)
jekyll-redirect-from (0.11.0)
jekyll (>= 2.0)
jekyll-sass-converter (1.3.0)
sass (~> 3.2)
jekyll-seo-tag (2.0.0)
jekyll (~> 3.1)
jekyll-sitemap (0.10.0)
jekyll-watch (1.5.0)
listen (~> 3.0, < 3.1)
jemoji (0.7.0)
activesupport (~> 4.0)
gemoji (~> 2.0)
html-pipeline (~> 2.2)
jekyll (>= 3.0)
json (1.8.3)
kramdown (1.11.1)
liquid (3.0.6)
listen (3.0.6)
rb-fsevent (>= 0.9.3)
rb-inotify (>= 0.9.7)
mercenary (0.3.6)
mini_portile2 (2.1.0)
minitest (5.9.0)
multipart-post (2.0.0)
net-dns (0.8.0)
nokogiri (1.6.8)
mini_portile2 (~> 2.1.0)
pkg-config (~> 1.1.7)
octokit (4.3.0)
sawyer (~> 0.7.0, >= 0.5.3)
pkg-config (1.1.7)
public_suffix (1.5.3)
rake (11.2.2)
rb-fsevent (0.9.7)
rb-inotify (0.9.7)
ffi (>= 0.5.0)
rouge (1.11.1)
safe_yaml (1.0.4)
sass (3.4.22)
sawyer (0.7.0)
addressable (>= 2.3.5, < 2.5)
faraday (~> 0.8, < 0.10)
terminal-table (1.6.0)
thread_safe (0.3.5)
typhoeus (0.8.0)
ethon (>= 0.8.0)
tzinfo (1.2.2)
thread_safe (~> 0.1)

PLATFORMS
ruby

DEPENDENCIES
github-pages
rake

BUNDLED WITH
1.12.5
9 changes: 9 additions & 0 deletions Rakefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
require "rake/testtask"
Rake::TestTask.new do |t|
t.libs << "test"
t.test_files = FileList["test/*_test.rb"]
t.warning = false
t.verbose = false
end

task :default => :test
19 changes: 19 additions & 0 deletions _config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
baseurl: "/open-source-handbook"

exclude:
- bin
- docs
- Gemfile*
- Rakefile
- README.md
- script
- test
- vendor

permalink: /:path/

defaults:
- scope:
path: ""
values:
layout: article
7 changes: 7 additions & 0 deletions _data/fields.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Each piece of content has YAML front matter with these properties:

title:
required: true

next:
type: String
13 changes: 13 additions & 0 deletions _layouts/article.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<h1>{{ page.title }}</h1>

{{ content }}

{% assign previous = site.pages | where: "next", page.path | first %}
{% if previous %}
Previous: <a href="{{ previous.url | prepend: site.baseurl }}">{{ previous.title }}</a> |
{% endif %}

{% if page.next %}
{% assign next = site.pages | where: "path", page.next | first %}
Next: <a href="{{ next.url | prepend: site.baseurl }}">{{ next.title }}</a>
{% endif %}
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
# **Branding**
---
title: Branding
next: getting-started/preparing.md
---

You’ve thought about who your users are, what they need from you, and what you might be able to offer them. Next, we’ll put that research into practice as we consider the brand of your project.

Expand All @@ -24,7 +27,7 @@ Make sure that your project’s name doesn’t infringe upon any trademarks. A c



You’ll also want to look for open source projects with a similar name, especially if you share the same language or ecosystem. If your name overlaps with a popular existing project, you will confuse your audience and make it less likely that anyone will use what you’ve created. You can check for similar project names here: [http://ivantomic.com/projects/ospnc/](http://ivantomic.com/projects/ospnc/)
You’ll also want to look for open source projects with a similar name, especially if you share the same language or ecosystem. If your name overlaps with a popular existing project, you will confuse your audience and make it less likely that anyone will use what you’ve created. You can check for similar project names here: [http://ivantomic.com/projects/ospnc/](http://ivantomic.com/projects/ospnc/)



Expand Down Expand Up @@ -69,5 +72,3 @@ We’re almost there! Next, we’ll walk you through a few components that every
### Further reading

* [http://producingoss.com/en/getting-started.html#choosing-a-name](http://producingoss.com/en/getting-started.html#choosing-a-name)

[Previous](setting-expecations.md) | [Next](preparing.md)
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
# Before You Get Started
---
title: Before you Get Started
next: getting-started/setting-expectations.md
---

## What does it mean to open source a project?

Expand Down Expand Up @@ -31,5 +34,3 @@ Remember: open source isn’t just for software! You can open source everything
When you open source a project, you open yourself to feedback and suggestions from other people who are engaged with your work. It might feel intimidating to open source a project for the first time, but remember that you’re not alone.

In the next section, we’ll help you figure out your goals around open sourcing your project. Understanding these goals beforehand will make it easier to manage your and others’ expectations later on.

[Previous](../index.md) | [Next](setting-expectations.md)
10 changes: 6 additions & 4 deletions _content/getting-started/legal.md → getting-started/legal.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# **The legal side of open source**
---
title: The legal side of open source
---

Sharing your creative work with the world can be an exciting and rewarding experience. It can also mean a bunch of legal things you didn’t know you had to worry about.

Expand Down Expand Up @@ -100,14 +102,14 @@ If you use others’ open source code to create anything that could be considere



To learn more about the implications of different open source licenses, check out: [https://tldrlegal.com/](https://tldrlegal.com/)
To learn more about the implications of different open source licenses, check out: [https://tldrlegal.com/](https://tldrlegal.com/)



### Related content

* [http://choosealicense.com](http://choosealicense.com)
* [https://tldrlegal.com/](https://tldrlegal.com/)
* [https://processmechanics.com/2015/07/23/a-model-ip-and-open-source-contribution-policy/](https://processmechanics.com/2015/07/23/a-model-ip-and-open-source-contribution-policy/)
* [https://processmechanics.com/2015/07/23/a-model-ip-and-open-source-contribution-policy/](https://processmechanics.com/2015/07/23/a-model-ip-and-open-source-contribution-policy/)
* [https://blog.docker.com/2014/01/docker-code-contributions-require-developer-certificate-of-origin/](https://blog.docker.com/2014/01/docker-code-contributions-require-developer-certificate-of-origin/)
* [https://www.joyent.com/blog/broadening-node-js-contributions](https://www.joyent.com/blog/broadening-node-js-contributions)
* [https://www.joyent.com/blog/broadening-node-js-contributions](https://www.joyent.com/blog/broadening-node-js-contributions)
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
# **Preparing for launch**
---
title: Preparing for launch
next: marketing/index.md
---

You’re almost ready to launch your project! In this section, we’ll talk about what to include in an open source project before releasing it to the world.

Expand Down Expand Up @@ -87,25 +90,20 @@ Sometimes, it will take a long time before people notice your open source projec

* Licenses
* [https://github.com/blog/1530-choosing-an-open-source-license](https://github.com/blog/1530-choosing-an-open-source-license)
* [http://choosealicense.com](http://choosealicense.com)
* [http://choosealicense.com](http://choosealicense.com)
* READMEs
* [http://tom.preston-werner.com/2010/08/23/readme-driven-development.html](http://tom.preston-werner.com/2010/08/23/readme-driven-development.html)
* [https://github.com/matiassingers/awesome-readme](https://github.com/matiassingers/awesome-readme)
* [https://pages.18f.gov/open-source-guide/making-readmes-readable/](https://pages.18f.gov/open-source-guide/making-readmes-readable/)
* [https://changelog.com/a-beginners-guide-to-creating-a-readme/](https://changelog.com/a-beginners-guide-to-creating-a-readme/)
* [https://gist.github.com/jxson/1784669](https://gist.github.com/jxson/1784669)
* [https://gist.github.com/jxson/1784669](https://gist.github.com/jxson/1784669)
* Contributing guides
* [https://github.com/blog/1184-contributing-guidelines](https://github.com/blog/1184-contributing-guidelines)
* [http://www.contribution-guide.org/](http://www.contribution-guide.org/)
* [https://github.com/nayafia/contributing-template](https://github.com/nayafia/contributing-template)
* [http://www.contribution-guide.org/](http://www.contribution-guide.org/)
* [https://github.com/nayafia/contributing-template](https://github.com/nayafia/contributing-template)
* [http://mozillascience.github.io/working-open-workshop/contributing/](http://mozillascience.github.io/working-open-workshop/contributing/)
* Codes of conduct
* [http://contributor-covenant.org/](http://contributor-covenant.org/)
* [https://github.com/django/code-of-conduct](https://github.com/django/code-of-conduct)
* [https://adainitiative.org/2014/02/18/howto-design-a-code-of-conduct-for-your-community/](https://adainitiative.org/2014/02/18/howto-design-a-code-of-conduct-for-your-community/)
* [http://contributor-covenant.org/](http://contributor-covenant.org/)
* [https://github.com/django/code-of-conduct](https://github.com/django/code-of-conduct)
* [https://adainitiative.org/2014/02/18/howto-design-a-code-of-conduct-for-your-community/](https://adainitiative.org/2014/02/18/howto-design-a-code-of-conduct-for-your-community/)
* [https://github.com/docker/docker/blob/master/CONTRIBUTING.md#docker-community-guidelines/](https://github.com/docker/docker/blob/master/CONTRIBUTING.md#docker-community-guidelines/)


[Previous](branding.md) | [Next](../marketing/index.md)


Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
# Setting expectations
---
title: Setting expectations
next: getting-started/branding.md
---

There are many reasons to open source a project. It’s a good idea to figure out yours before going public with your project. What you want to get out of the experience will guide how you manage your project and help you figure out where to say yes (and no!).

Expand Down Expand Up @@ -36,7 +39,7 @@ If you’re hoping to get feedback on something you’ve created, consider askin

## Figure out what others need from you

Finally, open sourcing a project is a two-way street. People who use your project will probably ask you for things, too.
Finally, open sourcing a project is a two-way street. People who use your project will probably ask you for things, too.

Try to anticipate these needs beforehand so you can add them to your project from the beginning. Successful open source projects try to document as much as they can in public. Much like reusable pieces of code, reusable information means less people need to ask you the same questions over and over again. (That means less work for you!)

Expand All @@ -60,5 +63,3 @@ We’ll also use these answers in the next section, as you consider the brand of

* http://mozillascience.github.io/working-open-workshop/personas_pathways/
* http://tom.preston-werner.com/2010/08/23/readme-driven-development.html

[Previous](index.md) | [Next](branding.md)
5 changes: 4 additions & 1 deletion _content/index.md → index.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
# Welcome
---
title: Welcome
next: getting-started/index.md
---

Welcome to the Open Source Handbook! We created this handbook to help creators like you successfully release and grow your projects.

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
# **Building a Community**
---
title: Building a community
next: marketing/measuring.md
---

You’ve launched your project, you’re spreading the word, and people are checking out your project. Awesome! Now, how do you get them to stick around? In this section, we’ll discuss ways to encourage people to use, contribute to, and evangelize your project.

Expand Down Expand Up @@ -54,13 +57,10 @@ You’re doing great so far! Now that you’re promoting your project and growin

### Further reading

* [http://radek.io/2015/10/12/marketing-for-open-source-projects-5/](http://radek.io/2015/10/12/marketing-for-open-source-projects-5/)
* [http://radek.io/2015/10/12/marketing-for-open-source-projects-5/](http://radek.io/2015/10/12/marketing-for-open-source-projects-5/)

* [http://hood.ie/blog/welcoming-communities.html](http://hood.ie/blog/welcoming-communities.html)
* [http://hood.ie/blog/welcoming-communities.html](http://hood.ie/blog/welcoming-communities.html)

* [https://ashfurrow.com/blog/building-popular-projects/](https://ashfurrow.com/blog/building-popular-projects/)

* [http://sarah.thesharps.us/2015/10/06/what-makes-a-good-community/](http://sarah.thesharps.us/2015/10/06/what-makes-a-good-community/)


[Previous](spreading-word.md) | [Next](measuring.md)
* [http://sarah.thesharps.us/2015/10/06/what-makes-a-good-community/](http://sarah.thesharps.us/2015/10/06/what-makes-a-good-community/)
7 changes: 4 additions & 3 deletions _content/marketing/index.md → marketing/index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
# **Marketing your project**
---
title: Marketing your project
next: marketing/spreading-word.md
---

This section of the handbook will help you spread the word about your project and grow your initial community of users and contributors. If you’re looking for feedback on your project, or want people to use and share your work, this part is for you.

Remember, reaching your audience takes time. It may take months or years for you to grow a community around your project. Don’t give up! It’s all part of the process.

[Previous](../getting-started/preparing.md) | [Next](spreading-word.md)
Loading