npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

generator-ng2-webpack

v0.6.7

Published

An opinionated tool for scaffolding an app using angular2 and webpack

Downloads

35

Readme

NPM

Join the chat at https://gitter.im/cmelion/generator-ng2-webpack

generator-ng2-webpack

An opinionated BYOBE tool (Yeoman generator) for scaffolding an app using angular2 and webpack

We like React too! So if you have some react components you want to use in your Angular 2 apps we will be adding a sub-generator very soon! For now check out the about component in the generated app for a taste of what you can do.

Credits

This generator was inspired by:

  • https://github.com/preboot/angular-webpack
  • https://github.com/AngularClass/angular2-webpack-starter
  • https://github.com/mcfly-io/generator-ng2-webpack
  • http://www.syntaxsuccess.com/viewarticle/integrating-react-with-angular-2.0

Demo App

Sample generator output

Installation

First, install Yeoman and generator-ng2-webpack using npm. If you don't already have node.js/npm installed, we recommend using nvm (windows users may want to consult the wiki).

npm install -g yo
npm install -g generator-ng2-webpack

Then generate your new project:

# create an application directory
$mkdir my-app

# change directory to your app
$ cd my-app

yo ng2-webpack [project-name]

You then have access to the following sub generators:

  • yo ng2-webpack:service (Creates a service)
  • yo ng2-webpack:pipe (Creates a pipe)
  • yo ng2-webpack:component (Creates a component)
  • yo ng2-webpack:directive (Creates a directive)
  • yo ng2-webpack:interface (Creates an interface)

Resulting in a complete, yet simple, starter for Angular using Webpack.

You may prefer to use npm to run your sub-generators. For a complete list of available commands and to add tab auto-completion, run the following commands in a terminal:

$ npm completion >> ~/.bashrc
$ source ~/.bashrc
$ npm run <tab><tab>

which will produce the following output


build                 docker-open-terminal  e2e-live              new-service           watch
ci                    docker-server         lint                  postinstall           webdriver-start
clean                 docker-start          new-component         server                webdriver-update
clean-install         docker-stop           new-directive         start                 
clean-start           docs                  new-interface         test                  
delayed-open          e2e                   new-pipe              test-watch  
 

This workflow serves as a starting point for building component based Angular 2.0 applications using Webpack.

  • Heavily commented webpack configuration with reasonable defaults.
  • ES6, and ES7 support with babel.
  • Source maps included in all builds.
  • Development server with live reload.
  • Production builds with cache busting.
  • Testing environment using karma to run tests and jasmine as the framework.
  • Code coverage when tests are run.
  • No gulp and no grunt, just npm scripts.

Warning: Make sure you're using the latest version of Node.js and NPM

Quick start


# change directory to your app
$ cd my-app

# start the server
$ npm start

go to http://localhost:2368 in your browser.

Table of Contents

Getting Started

File Structure

├── app/                            * top level web app component folder
│   ├── components/                 * subcomponents
│   │   ├── about/                  * example page level component folder
│   │   │   ├── index.async.ts      * .async indicates that the component will be asychronously loaded
│   │   │   ├── spec.ts             * unit test
│   │   │   ├── style.scss          * css styles, could be css, less or sass
│   │   │   └── template.html       * component's html template
│   │   └── home/                   * example main page level component
│   │       ├── e2e.js              * end-to-end test for home
│   │       ├── index.ts            * a simple synchronous component
│   │       ├── spec.ts             * 
│   │       ├── style.scss          * 
│   │       └── template.html       * 
│   ├── e2e.js                      * end-to-end test for the app component
│   ├── index.ts                    * the app component
│   ├── root.spec.ts                * the main entry point for hierarchically nested tests.
│   ├── services/                   * app level service folder
│   │   └── api/                    * example application level service folder
│   │       ├── index.ts            * example service
│   │       └── spec.ts             * unit test associated with example service
│   ├── style.scss                  * application component specific styles
│   └── template.html               * application component html template
├── bootstrap.ts                    * application entry point (bootstrap)
├── public/                         * static public facing resources
│   ├── img/                        * global/top level icons and images
│   └── index.html                  * the html index page where it all starts
├── shims/                          * shims an polyfills for non-compliant browsers
│   └── shims_for_IE.js             * sample shim
├── style/                          * 
│   └── app.scss                    * styles required by the index page
└── vendor.ts                       * this is where we import shims/polyfills and core third party libraries

Dependencies

What you need to run this app:

  • node and npm (Use NVM)
  • Ensure you're running Node (v4.1.x+) and NPM (2.14.x+)

Installing

# create an application directory
$mkdir my-app

# change directory to your app
$ cd my-app

yo ng2-webpack [project-name]

That's it!

Running the app

After you have installed all dependencies you can now run the app with:

npm start

or (if you want to automatically open a browser window)

npm delayed-open

It will start a local server using webpack-dev-server which will watch, build (in-memory), and reload for you. The port will be displayed to you as http://localhost:2368.

Developing

Build files

  • single run: npm run build
  • build files and watch: npm run watch

Testing

1. Unit Tests

  • single run: npm test
  • live mode (TDD style): npm run test-watch

Roadmap

Frequently asked questions

License

MIT