A collection of simple sites built with various static site engines
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 30 commits behind remotesynth:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
POHTML
harpsite
harpsite_ejs
jekyllsite
middlemansite
wintersmithsite
README.md
sample-project.png
static-sites.pptx

README.md

Static Site Samples

This is a simple example site built using various static site generators to explore the differences between the multitude of available static site options.

The initial samples are Jekyll, HarpJS, Middleman, Wintersmith with more to come.

Sample text and images are taken from the Adventure Time! Wiki.

The sample project looks the same in all cases. It was designed to cover specific use cases that are common, basic requirements for a site:

  • Custom global data
  • Custom post data
  • Custom data collections
  • Post summaries (i.e. specifying a break point in the text for a summary)
  • RSS Feed
  • Date display formatting

sample project

##Assumptions

In order to make "fair" comparisons, all of the examples are (initially) built using the default templating language. If an engine supports multiple defaults, the sample is built with the language used in the generated templates (for example, Harp supports Jade and EJS by default but the generated templates use Jade, so the initial sample was built with Jade).

The "ratings" in the presentation represent my own personal opinion. Given the stylistic differences between each project, your opinion may differ greatly. For example, those comfortable with Ruby may feel that Middleman is quite easy to use (however, I am not a Ruby developer).

##Jekyll Example

To get started, you'll need to install Jekyll (no official Windows support is available but a workaround is available. Jekyll is Ruby-based.

sudo gem install jekyll

Once you have Jekyll installed, simply change directory into the sample and start a local server:

cd jekyllsite
jekyll serve

The Jekyll samples are built with the Liquid template engine and YAML for the data (YAML was chosen because the default templates use YAML for data, although JSON and CSV are supported).

For a thorough tutorial on how to use Jekyll and how the sample site was built, read this article on the Telerik Developer Network.

##Middleman Example

Middleman is also Ruby-based but does officially support Windows via RubyInstaller. To install Middleman, use:

sudo gem install middleman

Once you have Middleman installed, first change directory into the sample. The example uses a LiveReload plugin, so you will need to install the bundles specified in the Gem file before starting the server. Then, start the server.

cd middlemansite
bundle install
middleman

The Middleman examples are built using the Erb templating language and YAML for the data.

##Harp Examples

Harp is available via npm. To install it, simple enter (the sudo is not necessary on Windows):

sudo npm install -g harp

Harp has two examples. The initial example was built using the Jade templating language and JSON for data. While Harp supports both Jade and EJS by default, the generated templates use Jade, so it was chosen initially. To run this example simply change directory into the sample folder and start a local server.

cd harpsite
harp server

By default, Harp supports both Jade and EJS. A second sample was built with Harp and EJS.

cd harpsite_ejs
harp server

##Wintersmith Example

Wintersmith is also available via npm (again the sudo is not necessary on Windows):

sudo npm install -g wintersmith

To run the project on a local server, simply change directory and start a preview:

cd wintersmithsite
wintersmith preview

Wintersmith comes bundled with Jade templating support. The data uses JSON.