Skip to content
This repository has been archived by the owner on May 25, 2019. It is now read-only.

Yeoman generator that scaffolds out a front-end web app

Notifications You must be signed in to change notification settings

yeoman/generator-webapp_DEPRECATED

Repository files navigation

Web app generator Build Status Gitter

Yeoman generator that scaffolds out a front-end web app.

Looking for New Maintainers

This generator is not actively maintained because we're focusing on generator-gulp-webapp, which is very similar, but uses gulp instead of Grunt.

We would be happy to take on new maintainers and will still be around for merging PRs.

Features

  • CSS Autoprefixing
  • Built-in preview server with LiveReload
  • Automagically compile ES6 (with Babel) & Sass
  • Automagically lint your scripts
  • Automagically wire up your Bower components with grunt-wiredep.
  • Awesome Image Optimization (via OptiPNG, pngquant, jpegtran and gifsicle)
  • Mocha Unit Testing with PhantomJS
  • Bootstrap for Sass (Optional)
  • Leaner Modernizr builds (Optional)

For more information on what generator-webapp can do for you, take a look at the Grunt tasks used in our package.json.

Getting Started

  • Install: npm install -g generator-webapp
  • Run: yo webapp
  • Run grunt for building and grunt serve for preview*. --allow-remote option for remote access.

Third-Party Dependencies

(HTML/CSS/JS/Images/etc)

Third-party dependencies are managed with grunt-wiredep. Add new dependencies using Bower and then run the Grunt task to load them:

$ bower install --save jquery
$ grunt wiredep

This works if the package author has followed the Bower spec. If the files are not automatically added to your source code, check with the package's repo for support and/or file an issue with them to have it updated.

To manually add dependencies, bower install --save depName to get the files, then add a script or style tag to your index.html or another appropriate place.

The components are installed in the root of the project at /bower_components. To reference them from index.html, use src="bower_components" or src="/bower_components". Treat the bower_components directory as if it was a sibling to index.html.

Testing Note: a project checked into source control and later checked out needs to have bower install run from the test folder as well as from the project root.

Grunt Serve Note

Note: grunt server was used for previewing in earlier versions of the project, and has since been deprecated in favor of grunt serve.

Docs

We have recipes for integrating other popular technologies like Compass.

Options

  • --skip-install

    Skips the automatic execution of bower and npm after scaffolding has finished.

  • --test-framework=<framework>

    Either mocha or jasmine. Defaults to mocha.

  • --no-babel

    Turn off Babel support.

Contribute

See the contributing docs.

Note: We are regularly asked whether we can add or take away features. If a change is good enough to have a positive impact on all users, we are happy to consider it.

If not, generator-webapp is fork-friendly and you can always maintain a custom version which you npm install && npm link to continue using via yo webapp or a name of your choosing.

Sponsors

Love Yeoman work and community? Help us keep it alive by donating funds to cover project expenses!
[Become a sponsor]

License

BSD license