Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
228 lines (148 sloc) 6.68 KB



Installing Yeoman in an easy process that should take less than 10 minutes on OSX. We also provide notes on how to install on Linux or opt for a more custom installation, should you need to do this. At present, Yeoman is not supported on Windows (but we're working on it!).


Step 1: Install me

Open up a terminal and enter in the following:

{% highlight sh %} $ curl -L | sh {% endhighlight %}

This will immediately install Yeoman and any dependencies it may need such as Node, NPM and Ruby.

Step 2: Create a new project

Next, create a new directory to contain your Yeoman project, then enter in yeoman init.

{% highlight sh %} $ mkdir myapp && cd myapp $ yeoman init {% endhighlight %}

Step 3: Profit

We'll then ask you some questions to help scaffold your project out. Simple!


Yeoman requires a few specific dependencies to be present before it can be installed on Linux. These are Ruby, RVM, Compass, PhantomJS and Node.

Install Ruby

Use your relevant package manager to update or install Ruby with the following at a terminal window:

{% highlight sh %} $ sudo apt-get install ruby # for Ubuntu / Debian users $ sudo yum install ruby # for Red Hat / Fedora users {% endhighlight %}

Install RVM

Install RVM with ruby:

{% highlight sh %} $ curl -L | bash -s stable --ruby {% endhighlight %}

and with rails:

{% highlight sh %} $ curl -L | bash -s stable --rails {% endhighlight %}

Finally, to install without the "rubygems-bundler" or "rvm" gems:

{% highlight sh %} $ curl -L | bash -s stable --without-gems="rvm rubygems-bundler" {% endhighlight %}

Install Compass using RVM

{% highlight sh %} $ rvm wrapper 1.9.3@compass --no-prefix compass {% endhighlight %}

Install PhantomJS

To install PhantomJS, we recommend following the official guide.


{% highlight sh %} $ sudo apt-get install build-essential chrpath git-core libssl-dev libfontconfig1-dev $ git clone git:// $ cd phantomjs $ git checkout 1.6 ./ {% endhighlight %}

Install Node

We recommend downloading and installing the node binaries directly from This will save you needing to compile from source. There are also guides available for those wishing to install node using a package manager.

Install OptiPNG and libjpeg-turbo

You will also need to get the image optimization libraries we use, which can be installed using apt-get as follows:

{% highlight sh %} $ apt-get install optipng {% endhighlight %} and

{% highlight sh %} $ wget '' -O libjpeg-turbo_1.0.1_i386.deb $ dpkg -i libjpeg-turbo_1.0.1_i386.deb

ls -l /usr/lib/

lrwxrwxrwx 1 root root 17 2010-11-12 12:35 /usr/lib/ ->

rm -rf /usr/lib/

ln -s /opt/libjpeg-turbo/lib/ /usr/lib/

{% endhighlight %}

Install Yeoman

  • Install git if you don't have it already
  • Clone the yeoman repo and cd into the cli directory
  • Run this command: sudo npm install -g
  • Navigate to a new directory and run yeoman init to make sure everything is working as expected.

Note: once Yeoman has launched, you'll be able to easily install it via NPM, but for now, the above should work.

Custom Installation

There are two main ways to install, using a "global" or a "local" install.

  1. When installed globally: Provides a custom global binary named yeoman (or html5-boilerplate) which is a wrapper on top of grunt, plus the extra specific task and helpers.

  2. When installed locally: ability to load in your project and grunt setup a set of tasks that get referenced in your gruntfile (grunt.js) when run via grunt.

yeoman is not on npm (yet), but you can install it (and/or add it to your project dependencies) using a tarball url, very much like if it was published on npm.

global install

{% highlight sh %} npm install -g {% endhighlight %}

This installs Yeoman globally, which contains its own internal grunt and provides a yeoman binary.

local install

This works for system where grunt have been already installed globally with

{% highlight sh %} npm install grunt -g {% endhighlight %}

  1. Add yeoman as a project dependency. In your project's root, next to the grunt.js and package.json file, run npm install -S

  2. Add grunt.loadNpmTasks('yeoman') into the project's grunt.js gruntfile.

  3. Run grunt --help and all of the yeoman's tasks and helpers should be available in addition to those already provided by grunt.

The -S flag (or --save) will make npm add the dependency in the dependencies property of your package.json. This is optional but ensures you never forget to update your package.json file accordingly.

Note: Once on npm, it'll be easier. The npm install -S step will add the following to your package.json file.

{% highlight js %} "dependencies": { "yeoman": "0.1.1" } {% endhighlight %}

Change 0.1.1 to the tarball url:

git clone / npm install

Clone or download this repo. Then, cd into it and run the npm install command.

{% highlight sh %}

will most likely change to map the new location / repo / branch

git clone git://

install the dependencies

locally to play with it from the repo

npm install

or globally, to install the yeoman binary

npm install -g {% endhighlight %}

For development, the npm link command might be handy (posix only, instead of npm install -g).


One of our goals is to implement an easy way to update to the latest version of Yeoman with minimal effort on your part. Whilst we hope to get this in place before the first version of the project launches, you can otherwise update to the latest version as follows:

  • git clone
  • cd yeoman/cli
  • sudo npm install -g
  • sudo npm link


You may want to uninstall the globally installed package by running the following command:

{% highlight sh %} npm uninstall yeoman -g {% endhighlight %}

So sad to see you go ☹

If it was installed locally, next to your gruntfile, simply drop the node_modules/yeoman folder.imply drop the node_modules/yeoman folder.

Jump to Line
Something went wrong with that request. Please try again.