---
title: "Publish Packages to NPM with Yeoman"
description: "Using Yeoman’s generator-node to create and publish npm packages. Practical notes and code examples on Publish Packages to."
url: "https://h3manth.com/scribe/publish-packages-to-npm-with-yeoman/"
canonical_url: "https://h3manth.com/scribe/publish-packages-to-npm-with-yeoman/"
markdown_url: "https://h3manth.com/scribe/blog/publish-packages-to-npm-with-yeoman.md"
publishDate: "2013-11-30T00:00:00.000Z"
author: "Hemanth HM"
category: "node"
tags: ["node","npm","yeoman"]
word_count: 80
reading_time_minutes: 1
x_markdown_tokens: 261
content_signal: "ai-train=yes, search=yes, ai-input=yes"
---

# Publish Packages to NPM with Yeoman

> Using Yeoman’s generator-node to create and publish npm packages. Practical notes and code examples on Publish Packages to.

[Yeoman](http://yeoman.io/) makes creating and maintaining node packages easy with [generator-node](https://github.com/yeoman/generator-node).

## Getting Started

```bash
npm install -g generator-node
mkdir exmp && cd $_
yo node

Answer the prompts and get a complete scaffold:

create lib/exmp.js
create test/exmp_test.js
create .jshintrc
create .gitignore
create .travis.yml
create README.md
create Gruntfile.js
create package.json

## Directory Structure

.
├── Gruntfile.js
├── README.md
├── lib
│   └── exmp.js
├── package.json
└── test
    └── exmp_test.js
```

The Gruntfile's default task is `['jshint', 'nodeunit']` with [nodeunit](https://github.com/caolan/nodeunit) for testing.
