open source contributors TOC update (#5422)

* open source contributors TOC update

Signed-off-by: Victoria Bialas <vicky.bialas@gmail.com>

* added Kitematic for TOC symmetry

Signed-off-by: Victoria Bialas <vicky.bialas@gmail.com>

* removed old Kitematic example

Signed-off-by: Victoria Bialas <vicky.bialas@gmail.com>

* Update toc.yaml
This commit is contained in:
Victoria Bialas 2017-12-08 16:24:15 -08:00 committed by John Mulhausen
parent 93a665ed9d
commit 41ec00fdc0
20 changed files with 7 additions and 519 deletions

View File

@ -467,83 +467,17 @@ guides:
- sectiontitle: Open source at Docker
section:
- path: /opensource/code/
title: Quickstart contribution
- sectiontitle: Set up for Docker development
section:
- path: /opensource/project/who-written-for/
title: README first
- path: /opensource/project/software-required/
title: Get the required software
- path: /opensource/project/software-req-win/
title: Set up for development on Windows
- path: /opensource/project/set-up-git/
title: Configure Git for contributing
- path: /opensource/project/set-up-dev-env/
title: Work with a development container
- path: /opensource/project/test-and-docs/
title: Run tests and test documentation
- sectiontitle: Contribution workflow
section:
- path: /opensource/workflow/make-a-contribution/
title: Understand how to contribute
- path: /opensource/workflow/find-an-issue/
title: Find and claim an issue
- path: /opensource/workflow/work-issue/
title: Work on your issue
- path: /opensource/workflow/create-pr/
title: Create a pull request (PR)
- path: /opensource/workflow/review-pr/
title: Participate in the PR review
- path: /opensource/workflow/advanced-contributing/
title: Advanced contributing
- path: /opensource/workflow/coding-style/
title: Coding style checklist
- sectiontitle: Other ways to contribute
section:
- path: /opensource/ways/meetups/
title: Organize a Docker meetup
- path: /opensource/ways/issues/
title: Organize our issues
- path: /opensource/ways/community/
title: Support the community
- path: /opensource/ways/test/
title: Testing contributions
- sectiontitle: Contribute to Kitematic
section:
- path: /opensource/kitematic/get_started/
title: Get started
- path: /opensource/kitematic/find_issue/
title: Find an issue
- path: /opensource/kitematic/set_up_dev/
title: Set up for Kitematic development
- path: /opensource/kitematic/work_issue/
title: Develop in Kitematic (work on an issue)
- path: /opensource/kitematic/create_pr/
title: Create a pull request (PR)
- path: /opensource/kitematic/next_steps/
title: Where to learn more
- sectiontitle: Governance
section:
- path: /opensource/governance/dgab-info/
title: Docker governance advisory board
- path: /opensource/governance/board-profiles/
title: Board member profiles
- path: /opensource/governance/conduct-code/
title: Code of conduct
- path: /opensource/FAQ/
title: FAQ for contributors
- path: /opensource/get-help/
title: Where to chat or get help
- path: /opensource/doc-style/
title: Style guide for Docker documentation
- path: /opensource/
title: Contribute to documentation
- path: /opensource/ways/
title: Other ways to contribute
- sectiontitle:
- sectiontitle: Documentation archive
section:
- path: /docsarchive/
title: View the docs archives
- title: Docs hackathon results
path: /hackathon/
- path: /hackathon/
title: Docs hackathon results
reference:
- sectiontitle: File formats

View File

@ -107,12 +107,3 @@ information you are looking for on the GitHub repository.
## Looking for Moby?
{% include content/moby.md %}
## Legacy fun and practice
For practice with GitHub and contributing to a codebase, read through
[Contribute to Kitematic](/opensource/kitematic/index.md) which incorporates the
kind of walkthrough we originally provided as an open source contributor guide
here. See also, the [Kitematic
README](https://github.com/docker/kitematic/blob/master/README.md), and the
[Kitematic user guide](/kitematic/userguide.md).

View File

@ -1,56 +0,0 @@
---
description: Explains how to create a pull request for change or new feature
keywords: Kitematic, open source, contribute, contributor, tour, development, contribute, pull request, review, workflow, beginner, squash, commit
title: Create a pull request (PR)
---
Make sure you follow the [rebase
guidelines](/opensource/workflow/create-pr/#rebase-your-branch) before you make
a pull request. Rebasing helps verify that your commit is clean, and allows for
an easier and faster merge of your code.
Once you've cleaned up your commits:
1. Push your code to your repository under the same name as your local branch (in the case of this example, 1191-branch).
$ git push origin 1191-branch:1191-branch
2. Open a web browser to your fork on GitHub.
You should see the latest activity from your branch.
3. Click **Compare & pull request**.
The system displays the pull request dialog.
![Pull Request dialog](images/pr_compare.png)
The pull request compares your changes to the `master` branch on the
`kitematic/kitematic` repository.
4. Edit the pull request description and add a reference to the issue you are fixing.
GitHub helps you out by searching for the issue as you type.
![Fixes issue](images/pr_describe_issue.png)
5. Scroll down and verify the PR contains the commits and changes you expect.
For example, is the file count correct? Are the changes in the files what
you expect?
![Commits](images/pr_commits_expected.png)
6. Click **Create pull request**.
The system creates the request and opens it for you in the `kitematic/kitematic`
repository.
![Pull request made](images/pr_pull_request_made.png)
## Where to go next
Congratulations! You've created your first pull request to Kitematic!
The next step in this process is to participate in your PR's review. To learn more, and try another development exercise, see [where to learn more](next_steps.md).

View File

@ -1,47 +0,0 @@
---
description: Explains how to find a Kitematic issue
keywords: Kitematic, open source, contribute, contributor, tour
title: Find an issue on GitHub
---
Currently, the Kitematic GUI shows the name of a selected container, but not the
ID. The tour shows you how to improve the GUI by adding the container ID to the
display items, and integrate the updates into the codebase.
To find and claim an issue you want to work on:
1. Go to the [Kitematic repository](https://github.com/docker/kitematic){: target="_blank" class="_"}.
2. Click the **Issues** link.
A list of the open issues appears.
![Open issues](images/list_open_issues.png)
3. From the "Labels" drop-down, select <strong class="gh-label beginner">exp/beginner</strong>.
The system filters to show only open <strong class="gh-label beginner">exp/beginner</strong> issues.
4. Open an issue that interests you.
The comments on the issues describe the problem and can provide information for a potential solution.
For this exercise we will select the issue [#1191 Missing container id](https://github.com/docker/kitematic/issues/1191){: target="_blank" class="_"}.
5. When you find an open issue that both interests you and is unclaimed, add a
`#dibs` comment. Make sure that no other user has chosen to work on the issue.
The project does not permit external contributors to assign issues
to themselves. Read the comments to find if a user claimed the issue
by leaving a `#dibs` comment on the issue.
6. Make a note of the issue number; you will need it for later.
## Where to go next
Go to next section to learn [Set up your Kitematic development
environment](set_up_dev.md).
(For more about working with open source issues, see [Contribute to the Moby
project](https://github.com/moby/moby/blob/master/CONTRIBUTING.md).{:
target="_blank" class="_"}

View File

@ -1,34 +0,0 @@
---
description: Overview of Kitematic development process
keywords: Kitematic, open source, contribute, contributor, tour, development
title: Get started with your Kitematic contributions
---
Kitematic is an open source project that simplifies the Docker experience. It
automates Docker installation and setup, and provides an interactive graphical
user interface (GUI) for working with containers. You can use Kitematic to create, run, and manage Docker containers, and find public images on Docker Hub.
![Kitematic GUI](images/gui-splash-hub.png)
See the [Kitematic user guide](/kitematic/userguide) to learn more about it from a user perspective.
## We welcome your contributions!
We'd like to see Kitematic evolve
with community contributed add-ons, extensions, themes, plug-ins, and cool, new
features.
## Start the developer tour
If you're new to working with Docker open source projects or new to
the Kitematic codebase, this quick tour will help you get started. Follow along with these steps to set up your Kitematic development environment and practice working on an example issue.
1. [Find a Kitematic issue on GitHub and fork](find_issue.md)
2. [Set up your Kitematic development environment and clone the repository](set_up_dev.md)
3. [Develop in Kitematic (work on an issue)](work_issue.md)
4. [Review your branch and create a pull request (PR)](create_pr.md)
5. [Where to learn more](next_steps.md)
## Where to go next
[Find an issue on GitHub](find_issue.md) to get started.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 114 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 KiB

View File

@ -1,12 +0,0 @@
---
description: Introduces Kitematic contribute topics and tour
keywords: Kitematic, open source, contribute, contributor, tour, issue, review
title: Practice contribution workflow with Kitematic
---
* [Get started](get_started.md)
* [Find an issue on GitHub](find_issue.md)
* [Set up for Kitematic development](set_up_dev.md)
* [Develop in Kitematic (work on an issue)](work_issue.md)
* [Review your branch and create a pull request (PR)](create_pr.md)
* [Where to learn more](next_steps.md)

View File

@ -1,30 +0,0 @@
---
description: Explains next steps after the tour
keywords: Kitematic, open source, contribute, contributor, tour, development, contribute
title: Where to learn more
---
You've just created your first pull request to Kitematic!
## Take the development challenge
Now that youve had some practice, try adding another feature to Kitematic on your own.
As you learned in the previous exercise, adding the container ID to the container **Settings** tab is fairly simple.
Let's provide another missing piece of information for Kitematic users:
"_When I look at an active container in Kitematic, I want to know what command the container is currently running_."
![An active container in Kitematic](images/kitematic_gui_container_id.png)
In a terminal window, users can get this by looking at running containers with: `docker ps`
As an exercise, implement the code changes needed to display the current container's running command. When you are ready to share the new mini feature, create a PR for it.
## Where to go next
- To learn more about contributing to open source projects, see
[Contribute to the Moby project](https://github.com/moby/moby/blob/master/CONTRIBUTING.md).
- To learn more about contributing to Docker product documentation, see the [README on docker/docker.github.io](https://github.com/docker/docker.github.io/blob/master/README.md)

View File

@ -1,177 +0,0 @@
---
description: Explains how to find a Kitematic issue
keywords: Kitematic, open source, contribute, contributor, tour, development
title: Set up for Kitematic development
---
Kitematic is built on top of:
- [Electron](http://electron.atom.io/){: target="_blank" class="_"}
- [Node.js](https://nodejs.org){: target="_blank" class="_"}
- [React](https://facebook.github.io/react/){: target="_blank" class="_"} and [AltJS](http://alt.js.org/){: target="_blank" class="_"} (which follows the Flux pattern).
## Download and install NVM
To get started, you will need to install Node.js v4.2.1. Using Node Version Manager (NVM) makes the Node.js install easy.
### Windows:
1. Download the [latest release](https://github.com/coreybutler/nvm-windows/releases/){: target="_blank" class="_"}.
2. Follow the installer steps to get NVM installed. Please note, you need to
uninstall any existing versions of node.js before installing NVM for Windows;
the above installer link will have an uninstaller available.
![windows installer](images/nvm_install.jpeg)
### macOS/Linux:
1. Open a terminal window.
2. Copy and paste the following install script:
```
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/install.sh | bash
```
3. To activate nvm, close the terminal window and re-open a new one.
(Alternatively, you can source nvm from your current shell with the command `. ~/.nvm/nvm.sh`.)
To learn more about working with NVM, see the [>macOS/Linux official nvm repo](https://github.com/creationix/nvm){: target="_blank" class="_"}, the [Windows official nvm repo](https://github.com/coreybutler/nvm-windows){: target="_blank" class="_"}, and [How To Install Node.js with NVM ON A VPS](ttps://www.digitalocean.com/community/tutorials/how-to-install-node-js-with-nvm-node-version-manager-on-a-vps){: target="_blank" class="_"}.
## Install Node.js
1. Install the proper Node.js version.
```
$ nvm install v4.2.1
```
2. Make this version the default.
```
$ nvm alias default v4.2.1
```
3. Run `node --version` to confirm that you are now using the proper Node.js version.
```
$ node --version
```
## Fork the master branch of Kitematic
To fork the master branch of Kitematic:
1. Go to the [docker/kitematic repository](https://github.com/docker/kitematic){: target="_blank" class="_"}.
2. Click **Fork** in the upper right corner of the GitHub interface.
GitHub forks the repository to your GitHub account. The original
`docker/kitematic` repository becomes a new fork `YOUR_ACCOUNT/kitematic`
under your account.
3. Copy your fork's clone URL from GitHub.
GitHub allows you to use HTTPS or SSH protocols for clones. You can use the `git` command line or clients like Subversion to clone a repository. This guide assumes you are using the HTTPS protocol and the `git` command line. If you are comfortable with SSH and some other tool, feel free to use that instead. You'll need to convert what you see in the guide to what is appropriate to your tool.
## Clone your repository locally and create a branch
To clone your repository and create a branch for the issue:
1. Open a terminal window on your local host and change to your home directory.
```
$ cd ~
```
In Windows, you'll work in your Docker Quickstart Terminal window instead of Powershell or a `cmd` window.
2. Create a directory for your new repository and change into that directory.
3. From the root of your repository, clone the fork to your local host.
```
$ git clone https://github.com/YOUR_USERNAME/kitematic.git
```
4. Create and checkout a branch for the issue you will be working on.
```
$ git checkout -b 1191-branch
```
As previously mentioned, issue [#1191](https://github.com/docker/kitematic/issues/1191)is set up as an example to use for this exercise.
## Set up your signature and upstream remote
You can set your signature globally or locally.
1. Set your `user.name` for the repository.
```
$ git config --local user.name "FirstName LastName"
```
2. Set your `user.email` for the repository.
```
$ git config --local user.email "emailname@mycompany.com"
```
3. Check the result in your `git` configuration.
```
$ git config --local --list
```
4. Set your local repository to track changes upstream, on the `kitematic` repository.
```
$ git remote add upstream https://github.com/docker/kitematic.git
```
## Install dependencies, start Kitematic, and verify your setup
Your Node.js install includes npm for package management. You'll use it to install supporting packages and start the app.
1. Verify that the package manager is running and check the version (at the time of this writing, v2.14.7).
```
$ npm --version
```
2. Install the package dependencies.
```
$ npm install
```
3. From the root of your kitematic repository, use the package manager to start Kitematic and confirm everything went well.
```
$ npm start
```
All of the core files in Kitematic are in the `src` folder, which then
follows the AltJS structure of:
```
kitematic/
|--src/
|--actions/
| |--MyActions.js
|--stores/
| |--MyStore.js
|--components/
| |--MyComponent.react.js
```
The `components` folder is where the layout files are, the `stores` represent the application logic, and `actions` are the dispatcher for actions taken within the `components`.
## Where to go next
You are ready to start working on the issue. Go to [Develop in Kitematic (work
on an issue)](work_issue.md).

View File

@ -1,81 +0,0 @@
---
description: Explains how to find a Kitematic issue
keywords: Kitematic, open source, contribute, contributor, tour, development
title: Develop in Kitematic (work on an issue)
---
For this tutorial, we will work on issue [https://github.com/docker/kitematic/issues/1191](https://github.com/docker/kitematic/issues/1191){: target="_blank" class="_"} which is a request to display the container ID in Kitematic for easy identification. (Currently, Kitematic shows the container name but not the ID.)
To do this, edit the container `General Settings` layout.
1. Open the project in your favorite editor - We recommend using [Atom](https://atom.io/){: target="_blank" class="_"} as it's a full featured editor with great [ES lint](http://eslint.org/){: target="_blank" class="_"} support to keep your code organized.
2. Open the `ContainerSettingsGeneral.react.js` file which is found under the `src/components/` folder and look for the following piece of code, which is in fact the layout (like HTML in the browser) circa line ~200:
```
return (
<div className="settings-panel">
...
```
3. Above this code we will create a javascript variable that will allow us to display our container ID:
```
let shortId = (
<div className="settings-section">
<h3>Container Id</h3>
<div className="container-name">
<input id="input-container-name" type="text" className="line" placeholder="Container Id" defaultValue={this.props.container.Id.substr(0, 12)} readOnly></input>
</div>
</div>
);
```
This snippet has been saved as a [GitHub gist](https://gist.github.com/FrenchBen/0f514e7b3c584e8d46b5){: target="_blank" class="_"}.
4. We then need to add the variable to the rendered view, by adding it below the `{rename}` tag. The new render code should look something like:
```
return (
<div className="settings-panel">
{rename}
{shortId}
```
At this point, the updated code should look similar to this:
![Javascript to display container id in kitematic](images/settings-code-example.png)
5. Save the code changes, and restart Kitematic.
```
$ npm start
```
Now, the container ID should show on the General Settings tab, along with the container name.
![Container ID](images/kitematic_gui_container_id.png)
>**Note**: The container ID in Kitematic matches the ID shown as output to the `docker ps` command.*
6. You can close the Kitematic application now, and kill the running process in the terminal via Ctrl+C.
7. Stage your changes by adding them.
```
$ git add src/components/ContainerSettingsGeneral.react.js
```
8. Commit your code changes with a comment that explains what this fixes or closes.
```
$ git commit -s -m "added container ID to show on settings tab, fixes issue #1191"
```
(See the general guidelines on coding style in [Contribute to the Moby
project](https://github.com/moby/moby/blob/master/CONTRIBUTING.md){: target="_blank" class="_"}.
## Where to go next
At this point, you are ready to [Review your branch and create a pull request](create_pr.md) to merge your new feature into Kitematic.