Hemanth.HM

A Computer Polyglot, CLI + WEB ♥'r.

Clone All Official Yeoman Generators

| Comments

I'm sure you are hungry for contributing to Yeoman, here is a simple script to clone all of the officially maintained yeoman generators.

To clone them all, just go to your bash shell, switch to a empty dir and fire:

1
  bash < <(curl -s http://h3manth.com/clone-generators.bash)

Behind the scene it's a simple bash script to clone all the repos:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#!/usr/bin/env bash

files=$(shopt -s nullglob dotglob; echo *)

if (( ${#files} ))
then
  echo "Please run this in an empty dir!" && exit 1
else
  declare -a generators=(
      generator-angular
      generator-backbone
      generator-bootstrap
      generator-chrome-extension
      generator-chromeapp
      generator-commonjs
      generator-dummy
      generator-ember
      generator
      generator-gruntfile
      generator-gruntplugin
      generator-gulp-webapp
      generator-jasmine
      generator-jquery
      generator-karma
      generator-mobile
      generator-mocha
      generator-node
      generator-polymer
      generator-webapp
  )

  for gen in "${generators[@]}"; do
    echo "Clonning generator-$gen..."
    git clone "https://github.com/yeoman/$gen.git"
  done
  echo "Done! Enjoy :-)"
fi

If you want a more generic node solution, you could use the below package.json and fire a npm install

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
"name": "yeoman-generators",
"version": "0.1.0",
"description": "Globally installs all the offical yeoman generators.",
"main": "index.js",
"scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "preinstall": "npm i -g generator-gruntplugin generator-angular generator-gulp-webapp generator-jquery generator-webapp generator-bootstrap generator-generator generator-backbone generator-node generator-mobile generator-polymer generator-ember generator-karma generator-gruntfile generator-mocha generator-chromeapp generator-chrome-extension generator-jasmine generator-dummy generator-commonjs"
},
"repository": {
    "type": "git",
    "url": "http://github.com/hemanth/yeoman-generators"
},
"keywords": [
    "yeoman",
    "generators"
],
"author": "Hemanth.HM",
"license": "MIT",
"bugs": {
    "url": "https://github.com/hemanth/yeoman-generators/issues"
},
"homepage": "https://github.com/hemanth/yeoman-generators"
}

Hope this helps you! Happy Hacking :-)

Comments