Skip to content


Switch branches/tags
This branch is 977 commits ahead of InfDeath:source.

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

The Website for the Bowler System

Build monitor:

How this thing works

Forking Repo and setting up travis ci

see this link for updating .congif.yaml with a new token.

Local Compile

  git clone
  sudo apt-get install ruby2.7-dev  bundler
  cd into
  bundle install
  bundle exec nanoc view & bundle exec guard
  For mac:
  Install xcode
  Install macports
  sudo port install ruby19
  sudo port install rb19-bundler
  bundle-1.9 install
  bundle-1.9 exec nanoc view && bundle-1.9 exec guard

To compile the source locally and see the rendered changes, run:

 bundle exec nanoc view & guard

and navagete to


to view the local build. As you make changes, it will automatically compile continously.

Adding A Tutorial

A tutorial consists of a Folder in the Content Directory with one file containing the tutorial info and multiple other .md files containg the steps.

Here is an example


The describes a tutorial and looks like this

tutorial: true
title: "My Simple Tutorial"
order: 2
image: foo.jpeg
[tutorial description]
  • tutorial: true markes this folder as a tutorial. if omitted it will be omitted from the tutorials page
  • title: "some string" tutorial title. will be displayed on tutorials page
  • order: # defines the order in which it will apear on the tutorials page. smaller numbers float to beginning of list. you can have duplicate numbers or skipped numbers or negative numbers.
  • image: file.jpeg the image associated with the tutorial that will be displayed on the tutorials page. if omitted a plaeholder image will be used. image should be in the same directory as the file
  • tutorial description The text for the tutorial that appears after the image and before the list of steps on the tutorial page

The *.md content files look like this

title: "my step"
step: 2
layout: post
[after this point, this is the content of the tutorial in markdown]
## this is a h2 title ##

this is a paragraph

1. this
2. is
3. a
4. ordered list

... etc/

  • title: "some title" the name of the current step
  • step: # Same as menu order smaller steps come sooner.
  • layout: post sets the page layout. should always be post for steps.

Adding Normal Pages

not everything has to be a tutorial, it can be a page.



The tutorial logic will ignore anything without the tutorial meta data and just put em in as pages

You can still use metadata though. like give it a title, set a layout other then default by adding a frontmatter section

title: This is just a vanilla page
layout: myawesometemplate
## just a normal page ##

nothing to see here

1. just
2. really
3. normal
4. seriosuly


To add a page (or tutorial) to the menu bar use these tags

menu: true
menuorder: 0
menuname: "Home"
  • menu: true will cause the page to get put into the site's main nav menu
  • menuorder: # is used to sort the menu. if omitted the item will be placed last
  • menuname: "Name" is the label for the menu item to be used in place of the page title. If title is omitted too it will be the file name.

Forking the repo and setting up

You need to define two variables. GH_TOKEN and GIT_NAME in your project's travis-ci settings. Your GIT_NAME should match the username of the account you used to generate your github token and your GH_TOKEN should be generated as per these instructions.

I’ve got a bunch of asciidoc files inside of that I want to build to save people from having to install asciidoctor or pandoc to regenerate these files.

First I go to and generate a token that I call outreach-resources with the permissions public_repo. This secret token needs to be stored somewhere, I don’t want it to be revealed inside my .travis.yml or on the travis build server. Travis supports encrypted environment variables, so I run the command

echo GH_TOKEN=my_github_token | travis encrypt --add 

where you’d replace my_github_token with the access token generated earlier; this command stores the encrypted github token inside the .travis.yml file.

Now that I’ve got an access token available on travis we can write the script that will push things back to github (checkout I set up the username and email address of the git user on travis, checkout the branch I wish to push to, add the files I want and commit using the environment variable $TRAVIS_BUILD_NUMBER which helps me identify which commits correspond to which builds (totally optional). I finally push this commit back to the repository which takes the form: https://${GH_TOKEN}<user_name>/<repo_name>.git, here GH_TOKEN is substituted inside the build server which acts as a username to the repository with full commit rights!

Travis’s build process is instructed by a file inside your repository named .travis.yml which contains information on the language of the repository, build comamands, dependencies, post build hooks etc. In my YAML file you can see I’m using the hooks before_install, script and after_success, all of which take a command, or a list of commands and execute them. You’ll want to keep the commands outside of the YAML file (i.e. don’t get rid of and put them all in after_success as ${GH_TOKEN} won’t be substituted).

Updating download links

On the new landing page the download links come from the frontmatter in the file. Update them by comitting a new file with updated links to this repo.

winInstaller: "*.*.*/Windows-nrdk-*.*.*.exe"
macInstaller: "*.*.*/MacOSX-nrdk-*.*.*.zip"


The Website for the Bowler System






No releases published


No packages published


  • CSS 40.7%
  • HTML 38.9%
  • Ruby 18.4%
  • JavaScript 1.8%
  • Shell 0.2%