Skip to content

Latest commit

 

History

History
110 lines (74 loc) · 3.05 KB

File metadata and controls

110 lines (74 loc) · 3.05 KB

angularjs-webpack

Dependency Status devDependency Status

A complete, yet simple, starter for AngularJS using Webpack.

This workflow serves as a starting point for building AngularJS (1.x) applications using Webpack 2.x. Should be noted that apart from the pre-installed angular package, this workflow is pretty much generic.

  • 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

Clone/Download the repo then edit app.js inside /src/app/app.js

# clone our repo
$ git clone https://github.com/preboot/angularjs-webpack.git my-app

# change directory to your app
$ cd my-app

# install the dependencies with npm
$ npm install

# start the server
$ npm start

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

Table of Contents

Getting Started

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

  • fork this repo
  • clone your fork
  • npm install to install all dependencies

Running the app

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

npm start

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:8080.

Developing

Build files

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

Docker support

  • run: cd containers && ./build.sh && ./run.sh && cd ..
  • test: curl http://localhost:4000/
  • stop: ./containers/stop.sh

Container name and port can be specified:

cd containers ./build.sh [CONTAINER] [DIR] ./run.sh [CONTAINER] [PORT] ./stop.sh [CONTAINER]

DIR is a directory for Dockerfile inside of containers folder. For example to create separated container for database:

  • Create directory, for example "mongodb" of containers folder
  • Create Dockerfile for MongoDB inside
  • Build it like: ./build.sh mongo mongodb
  • Finally run it: ./run.sh mongo 5000
  • Stop: ./stop.sh mongo

Testing

1. Unit Tests

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

License

MIT