All submissions are welcome. To submit a change, fork this repo, commit your changes, and send us a pull request.
Setup
Ruby 1.9 is required to build the site.
Get the nanoc gem, plus kramdown for markdown parsing:
bundle install
You can see the available commands with nanoc:
nanoc -h
Nanoc has some nice documentation to get you started. Though if you’re mainly concerned with editing or adding content, you won’t need to know much about nanoc.
Styleguide
Not sure how to structure the docs? Here’s what the structure of the
API docs should look like:
# API title
## API endpoint title
[VERB] /path/to/endpoint.json
### Parameters
name
: description
### Input (request json body)
<%= json :field => "sample value" %>
### Response
<%= headers 200, :pagination => true, 'X-Custom-Header' => "value" %>
<%= json :resource_name %>
developer.github.com
This is a GitHub API resource built with nanoc.
All submissions are welcome. To submit a change, fork this repo, commit your changes, and send us a pull request.
Setup
Ruby 1.9 is required to build the site.
Get the nanoc gem, plus kramdown for markdown parsing:
You can see the available commands with nanoc:
Nanoc has some nice documentation to get you started. Though if you’re mainly concerned with editing or adding content, you won’t need to know much about nanoc.
Styleguide
Not sure how to structure the docs? Here’s what the structure of the API docs should look like:
Note: We’re using Kramdown Markdown extensions, such as definition lists.
JSON Responses
We specify the JSON responses in ruby so that we don’t have to write them by hand all over the docs. You can render the JSON for a resource like this:
This looks up
GitHub::Resources::ISSUEinlib/resources.rb.Some actions return arrays. You can modify the JSON by passing a block:
Terminal blocks
You can specify terminal blocks with
pre.terminalelements. It’d be nice if Markdown could do this more cleanly…This isn’t a
curltutorial though, I’m not sure every API call needs to show how to access it withcurl.Development
Nanoc compiles the site into static files living in
./output. It’s smart enough not to try to compile unchanged files:You can setup whatever you want to view the files. If you have the adsf gem, however (I hope so, it was in the Gemfile), you can start Webrick:
Compilation times got you down? Use
autocompile!This starts a web server too, so there’s no need to run
nanoc view. One thing: remember to add trailing slashes to all nanoc links!Deploy
TODO
Maybe add a nice TOC at the top of each page.