Website designs for both and
Python Ruby Emacs Lisp JavaScript C# VimL Other
Pull request Compare This branch is 23 commits ahead of jschementi:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
images Make tools page point at new Python tools Jul 7, 2011
jinja2 directly check in docutils and jinja2 Feb 26, 2010
Web.Debug.config Allow for website to be opened in VS2010, and run generate.bat on eac… Apr 20, 2010
generate.bat Remove "Browser" link and stop wiping out deployment folder. May 15, 2013

README.rst and


  • Open iron-websites.sln in Visual Studio 2010 as "Administrator" That will setup IIS to serve the website from http://localhost/iron-websites. Building the solution generates the website for viewing; see generate.bat for details.

If you prefer the command-line:

  • Generate HTML files for both ruby and python in-place and stage for deployment:

  • See "Deploying" section below for instruction on how to get your change checked in and pushed to the live website.

Overview and share the same infrastructure; basically the same CSS, HTML templates, images, HTML generation and deployment scripts. The only difference are the content, which are stored in the python and ruby directories.

Getting the source

If you intend to submit a change to the website, please fork this repository and follow the instructions on how to get the source code locally. This will make it really easy to check-in your changes to your own private copy, and then send a pull-request to get your changes back into the original repo.

Updating content

The content of each website is represented by reStructuredText, a plaintext markup syntax. Each file is processed first by jinja, and then by RST to generate a HTML file to disk.

Generating HTML files

The logic for generating the HTML files is in, including navigation, style, and template info. The simplest way to generate the HTML files is to just use:


This will generate HTML for both sites and stage it for deployment. If for some reason you only want to generate HTML for a specific site, you can use the -python or -ruby flags:

Usage: python [-python|-ruby|-h]

View website

After generating the website, you can view it by going to the language-specific directories:

Staging for deploy

If you used generate.bat, you already have staged the sites for deployment. Otherwise, just run deploy.rb:

ruby deploy.rb

The websites are then staged at:

These directories are ready to go online, with all dependencies self-contained.

Checking in your changes

Before you deploy these changes to the live website(s), they must be checked into the main repository, or else you risk someone else deploying changes which overwrite yours. Here's the simple steps:

  1. Push your changes back into your own fork.
  2. Send a pull-request, which effectively starts a code-review.
  3. When jschementi signs off on the changes, they'll be pulled into the main repository, and then you're ready to deploy.


Currently deploying is only a manual process, so the completion of the code review will also include pushing the site live. Please let jschementi know if the changes are urgent.

Please ask jschementi if you have any additional questions.