• home
  • dradis framework guides

Contribute

The Dradis documentation team welcomes any and all help from the community. If you are interested in contributing to the effort, the information below will let you know how to do so and who to contact in order to get help and guidance.

1 How to Contribute?

First, you will need to fork the Dradis Framework guides repository from Github.

Go to https://github.com/dradis/dradisguides and fork it. then, check your forked copy out onto your local machine.


$ git clone git@github.com:<yourname>/dradisguides.git

Switch to your newly cloned repository.


$ cd dradisguides

You will want to add the main Dradis guides repository as a remote:


$ git remote add upstream git://github.com/dradis/dradisguides.git

For each guide you write, you will want to create a new branch:


$ git fetch upstream
$ git checkout -b <branchName> upstream/master

The -b switch is the branch name you are creating. When the time comes to push your changes back to the remote server you will need this name. Everyone will see this name, so choose wisely.

This will create a new branch for you to work on your new guide or to edit an existing guide. Next, you will need to get the guides executable.

2 Install the guides package

If You Use OSX or Windows and Aren’t a Ruby Developer

The easiest way to get started with the guides is to download and install the guides pkg on OSX or the guides exe on Windows. This will give you the guides executable on your machine, and does not require you to have a C compiler on your computer.

If You’re a Ruby Developer

To install the guides gem, just use:


$ gem install guides

3 Create Your Guide

Create a new guide <your_guide_name>.textile in the source directory. Use the following template:


  h2. Guide Topic

  This guide covers ... After reading this guide, you will be able to:

  * Make a list of the things you will cover.
  * This should be a relatively high level list.
  * It should cover what the reader will know how to do once done.

  endprologue.

  h3. Topics Should Use h3

  Each topic should use an h3.

To preview your guide as you write it, run the guides preview command.


$ guides preview
>> Thin web server (v1.2.7 codename No Hup)
>> Maximum connections set to 1024
>> Listening on 0.0.0.0:9292, CTRL+C to stop

Go to http://localhost:9292/<your_guide_name>.html in a browser. After making a change, refresh to see it update live.

If you do not see your changes, check the terminal window where you ran the preview command for error messages.

4 Updating guides.yml

You will also want to update the main guides.yml in the root of the repository with your new guide. First, decide which section your guide will go under. In general, new guides will go under the Advanced Guides section.

Next, create a new entry for your guide. You will need to decide on a title and description. For the URL, enter the filename you used for your guide, without the .textile ending. For example, if <your_guide_name> happens to be dradis_on_apache, then your entry will look something like this:

guides.yml

index:
  Advanced Guides:
    - title: "Running Dradis on Apache"
      url: dradis_on_apache
      text: "Learn how to run Dradis behind Apache and mod_passenger."

Once you are done, commit your work and then push your guide to your fork:

To commit all your changes:


$ git commit -a

Pushing your changes back to the remote repository:


$ git push origin <branchName>

branchName above is the name you used at the beginning of the guide in the git checkout step. If you can’t remember the name use ‘git branch -a’ to list the branches.

Next, submit a pull request from your repository. Make sure to make the pull request using the branch you used for the guide.

5 Some Guidelines

6 What to Contribute?

  • We need authors, editors, proofreaders, and translators. Adding a single paragraph of quality content to a guide is a good way to get started.
  • The easiest way to start is by improving an existing guide:
    • Improve the structure to make it more coherent.
    • Add missing information.
    • Correct any factual errors.
    • Fix typos or improve style.
    • Bring it up to date with the latest release of the Dradis Framework.
  • We’re also open to suggestions for entire new guides:
    • Contact the documentation team to get your idea approved. See the Contact section below.

7 What is the process?

  • Follow the instructions above to fork the repository and submit a pull request.
  • If you are a regular committer we will give you direct commit access.

8 Rules

  • Guides are licensed under a Creative Commons Attribution-Share Alike 3.0 License.
  • If you’re not sure whether a guide is actively being worked on, stop by IRC (information below) and ask.

9 Mailing List

Documentation requests and questions can be posted on the dradis-dev mailing list

10 Contact