Skip to content

unixboy/generator

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ironhack logo

Ironhack Express application generator.

NodeJS Logo MongoDB Logo Express Logo Mongoose Logo

HandleBars Logo

Introduction

iron-generator is Ironhack's NPM package that allows students to quickly create express projects. The Iron-generator is strongly opinionated:

  • Follows industry best practices
  • Predefined directory structure:
    • public: Public Assets folder (css, js, images)
    • models: Mongoose Schemas and models
    • routes: Project routes
    • views: Project views and layouts
  • Views Template: Handlebars
  • CSS Engine: SCSS - Node-sass-middleware
  • ORM: Mongoose
  • Comes prepopulated with popular, useful Express middlewares
    • Logger: morgan
    • Favicon: serve-favicon
    • HTTP POST Params: body-parser
    • Cookies: cookie-parser
  • Error handling: 404 (Not found), 500 (Internal Server Error)
  • Creates project .gitignore - removes node_modules, etc
  • Environment variables loaded from .env configuration file
  • Server monitoring: nodemon

Installation

Install iron-generator as a global NPM package, so you can run it from anywhere in your computer:

$ npm install -g iron-generator

Quick Start

The quickest way to get started with express is to utilize the executable irongenerate(1) to generate an application as shown below:

Create the app:

$ irongenerate awesome-project/
$ cd awesome-project/

This will generate the following directory structure:

awesome-project/
├── app.js
├── package.json
├── models
├── routes
│   └── index.js
├── views
│    ├── error.hbs
│    ├── index.hbs
│    └── layout.hbs
├── public
│   ├── images
│   ├── javascripts
│   │   └── script.js
│   └── stylesheets
│       └── styles.sass
├── .env
├── .gitignoe
├── bin
    ├── www

Install all dependencies described in package.json:

$ npm install

Start your Express.js app at http://localhost:3000/:

$ npm start

Command Line Options

This generator can also be further configured with the following command line flags.

-h, --help           output usage information
    --version        output the version number
-c, --css <engine>   add stylesheet <engine> support (plain|less|sass|scss) (defaults to scss)
-f, --force          force on non-empty directory

License

MIT

About

Express' application generator

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 96.5%
  • HTML 2.7%
  • CSS 0.8%