Angular 2 Starter
Angular 2 is still in Beta stage, please don't use this in production
Follow it here
Table of Content
Introduction
Welcome to Angular 2 Starter! This starter contains almost everything you need to start developing Angular 2:
- TypeScript for the base language
- with Typings for TypeScript definition manager
- Gulp for workflow (from serve, watch, compile, test to build)
- Bower for front-end package manager
- NPM for angular2 & dev-tooling package manager
- Live Server for development server & reload capability
- SystemJS for module loader
- Karma for test-runner
- Jasmine for test framework
- Istanbul for test coverage
- with Remap Istanbul for remapping Javascript to TypeScript coverage
- SystemJS Builder for module bundling in production
Please visit the wiki for more details.
Installation
Firstly, you need to have Node.js
- Support from v0.12.10 (LTS) or higher
- For v4, please use v4.3.x (LTS) or higher (highly recommended)
- For v5, please use v5.6.x or higher, here is why
You need v4.x or higher for Protractor
Then, install these packages globally:
npm install -g gulp bower
After that, just run:
npm install
and to install bower dependencies:
bower install
Start
Let's start up the server, run:
gulp
or gulp serve-dev
and done! The browser will popup and you can start trying Angular 2!
Every changes to the file will refresh the browser automatically
and it'll also compile your changed TypeScripts files to Javascript files.
Testing
This starter comes with testing gulp workflow
Unit testing
Just run
gulp test
and it'll compile all TypeScript files, start Karma, then remap Istanbul coverage so that it shows TypeScript coverage, not the transpiled Javascript coverage.
E2E testing
Firstly start the server:
gulp serve-dev
To begin testing, run:
gulp e2e
and it'll compile all E2E spec files in /test/e2e/*.spec.ts
, boot up Selenium server then launches Chrome browser.
Production
All build tasks will run the
gulp test
, the bundle will only be created if the test passed.
You can create production build by running:
gulp build
or you can create production build and then serve it using live-server
by running:
gulp serve-build
It uses SystemJS Builder to bundle your application so it's ready for production use
Contributing
Feel free to submit a PR if there are any issues or new features, read this before
Special thanks
- John Papa for his awesome angular-styleguide and Tour of Heroes
- Julie Ralph for her ng2-test-seed which helped me a lot to get started with testing feature
License
MIT