# Generator microlib

A Yeoman generator for browser microlibs.  

A microlib or micro-library is a javascript component that has a specific usecase and often a limited set of features. Great microlibraries have no dependecies and don't get in each others way.

## Why

Even if microlibs are small they can still benefit from using tools such as [Grunt](http://gruntjs.com/) and [Bower](http://bower.io/). *generator-microlib* is a [Yeoman](http://yeoman.io/) generator that will quickly get you a suitable setup to start leveraging these tools.

Microlibs are often components within a larger project you are working on, that could benefit others. By providing a quick way to test, package and distribute components, hopefully more people will find some time to do so.

## Included

The generator provides the following files.

	|- mylib
	   |- .editorconfig  // Example .editorconfig (http://editorconfig.org/)
	   |- .jshintrc      // Example JSHint configuration (http://www.jshint.com/docs/)
	   |- .gitignore     // Basic .gitignore
	   |- README.md      // Empty README file
	   |- Grunfile.js    // Basic Grunt configuration
	   |- bower.json     // Basic Bower configuration
	   |- package.json   // Basic Npm   configuration
	   |- dist           // Folder for your distributables (generated by grunt)
	   |- lib            // Folder for your library !!
	       |- yeoball.js // Example library, please remove
	   |- test           // Optional (only QUnit for now)
	       | - test.html // QUnit test markup
	       | - test.js   // QUnit tests
	 
The generator provides the following grunt tasks.

	$ grunt jshint qunit concat uglify
	$ grunt // will run them all

## Getting started

Make sure you have [yo](https://github.com/yeoman/yo) installed: `npm install -g yo`

Install the generator & create your project.

	$ npm install -g generator-microlib
	$ mkdir mylib && cd mylib
	$ yo microlib
	$ grunt

enjoy.

## License
[MIT License](http://en.wikipedia.org/wiki/MIT_License)
