Middleman Basis Template – Supporting Haml, Sass, CoffeeScript, Bower, ImageOptim, Sitemap
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.


Middleman Basis

Build Status

Basis comes with a bare minimum of pre-installs, ready for you to take it to the next level.
It is literally, the Basis for building a good, performant website.

General Information


The Basis for building a good, performant website. Middleman Basis uses:

  • Haml
  • Sass
  • CoffeeScript
  • Bower
  • Modernizr.js
  • Normalize.css
  • Search Engine Sitemap
  • ImageOptim
  • Humans.txt

Getting Started

Before you get started, make sure you have node.js & Bower already installed.

  1. Install middleman-basis as Middleman template.

    git clone https://github.com/pzi/middleman-basis.git ~/.middleman/middleman-basis
  2. Initialize a new Middleman project with the middleman-basis template

    middleman init MY_PROJECT_FOLDER --template=middleman-basis
    cd project_name

    In case you are using Middleman v4.x: middleman init MY_PROJECT_FOLDER -T pzi/middleman-basis

  3. Install Bower packages: bower install

  4. Install required gems: bundle install

  5. Run middleman

Make it your own!

After you have successfully set up the template for your new project, it's time to make it your own. You have the entire Middleman Basis repository as part of your new project, which includes a lot of files you won't need (e.g. .travis.yml, this version of the README etc.). So please, go ahead and remove files and/or change the content of them, according to your project's needs.

Customizing defaults

Middleman Basis makes use of Data Files. By default, the template comes with 2 data files:

  1. config.yml – a place for sitewide content
  2. humans.yml – a simpler way to add content to humans.txt

It's important that these 2 files get updated accordingly! It'd be unfortunate if your project gets launched with "Example" content. If you follow the examples, it will speed up the entire spin up procedure.


By default, middleman-basis only uses middleman-smusher to compress images. If you take image compression and optimisation serious, you will want to use middleman-imageoptim.

To make use of middleman-imageoptim, you will have to set up external utilities.

Once you have those tools, you can enable (uncomment it) in config.rb.


  • GitHub page
  • More/better documentation
  • Better spin-up instruction/how to use it as a template


  1. Fork it
  2. bower install && bundle install
  3. Create your feature branch (git checkout -b feature/my-new-feature)
  4. Commit your changes (git commit -am 'Added some feature')
  5. Push to the branch (git push origin my-new-feature)
  6. Create new Pull Request


See Changelog.


Middleman Basis was created by Patrik Affentranger and is distributed under the MIT license.

Donate Bitcoins