Creates a stub ruby file for your library to live in, lib/my_awesome_new_gem.rb

Creates a failing test using Shoulda, test/test_my_awesome_new_gem.rb

Creates a MIT license file

Creates a Rakefile with tasks for:

Managing your gem and releases

Running tests

Generating documentation

Initializes a git repository and adds all files, and ignores some reasonable files

Adds GitHub as the origin remote, using your GitHub username and the project name

Some choices

If you don’t like the defaults, you have some tough (or maybe easy if you’re opinionated) choices to make about your gem.

Creating repo

By default, jeweler only creates the project locally. If you want create the repo on GithHub, use --create-repo.

Testing framework

Jeweler defaults to shoulda, but jeweler supports a number of others as well:

test/unit (use --testunit)

minitest (use --minitest)

shoulda (use --shoulda)

rspec (use --rspec)

micronaut (use --micronaut)

bacon (use --bacon)

Additionally, you can generate a scaffold for cucumber features. It will automatically be setup for the testing framework you chose (except for bacon, which doesn’t seem to work inside of cucumber). Use --cucumber.

Releasing

Jeweler will automatically be able to release to GitHub, but you also have a few other options: