<commit_before>generator-mean-stack
====================

An other Yeoman Generator for MEAN (MongoDB, Express, AngularJS, NodeJS) application<commit_msg>write readme<commit_after>[![NPM version](http://img.shields.io/npm/v/generator-mean-stack.svg?style=flat)](http://npmjs.org/generator-mean-stack)
[![NPM downloads](http://img.shields.io/npm/dm/generator-mean-stack.svg?style=flat)](http://npmjs.org/generator-mean-stack)
[![Build Status](http://img.shields.io/travis/jbltx/generator-mean-stack/master.svg?style=flat)](https://travis-ci.org/jbltx/generator-mean-stack)
[![Dependency Status](http://img.shields.io/david/jbltx/generator-mean-stack.svg?style=flat)](https://david-dm.org/jbltx/generator-mean-stack)


# Yeoman generator for MEAN stack projects 


![Alt text](http://i.imgur.com/p5qqOjE.png)

## Introduction

MEAN stack defines application using MongoDB, ExpressJS, AngularJS and NodeJS for a full Javascript development.

## Features

- A MEAN stack app scaffold with HTML5 / CSS3 support
- Sub-generators (coming soon) to create backend routes, models, and frontend routes
- Mail sender support to generate strong authentication with email confirmation
- Already configured CSRF protection for all HTTP requests
- Built-in authentication service using PassportJS with different strategies (cookie-based)
- Support for SASS/SCSS and Autoprefixer
- Many extra features during installation (Bootstrap, Font Awesome, ...)

## Installation

Install the generator `npm install -g generator-mean-stack`

Make a new directory and cd into it `mkdir -p mean-project && cd $_`

Scaffold a new MEAN stack project `yo mean-stack`

## Generators

Available generators:

- [mean-stack (or mean-stack:app)](#app)
- mean-stack:backendRoute (soon)
- mean-stack:backendModel (soon)
- mean-stack:frontendRoute (soon)

**Note: Generators are to be run from the app root directory**

### App

Sets up a new MEAN stack app, generating all the boilerplate you need to get started.

Example: 

```yo mean-stack
```

## Serve and build

The generator makes a gruntfile configuration, so building your app becomes easy.

Build a fresh new distribution :

```grunt
```

Run the app server in development mode :

```grunt serve
```

You can define a ``production`` target to serve in production mode :

```grunt serve:production
```

**NB: this last command build automatically a new distribution before serving.**

## License

[MIT License](https://github.com/jbltx/generator-mean-stack/blob/master/LICENSE)
{'fraction_non_alphanumeric': 0.12655186223468162, 'fraction_numerical': 0.0012014417300760913, 'mean_word_length': 4.947619047619048, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 3, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3533458', 'n_tokens_mistral': 779, 'n_tokens_neox': 730, 'n_words': 233}