https://github.com/hbweb/angular2-govuk
Angular 2 Seed and Gov.uk template
https://github.com/hbweb/angular2-govuk
Last synced: 10 months ago
JSON representation
Angular 2 Seed and Gov.uk template
- Host: GitHub
- URL: https://github.com/hbweb/angular2-govuk
- Owner: hbweb
- License: mit
- Created: 2016-10-25T15:43:23.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2016-10-26T08:28:08.000Z (over 9 years ago)
- Last Synced: 2025-01-29T20:37:59.521Z (over 1 year ago)
- Language: TypeScript
- Size: 123 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Introduction
[](https://angular.io/styleguide)
[](https://travis-ci.org/mgechev/angular-seed)
[](https://ci.appveyor.com/project/mgechev/angular2-seed)
[](https://gitter.im/mgechev/angular2-seed?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[](http://opensource.org/licenses/MIT)
[](https://david-dm.org/mgechev/angular-seed)
[](https://david-dm.org/mgechev/angular-seed#info=devDependencies)
This project aims to bring [gov.uk elements](https://github.com/alphagov/govuk_elements) guidelines into Angular2 Seed project.
Provides fast, reliable and extensible starter for the development of Angular projects.
`angular-seed` provides the following features:
- Allows you to painlessly update the seed tasks of your already existing project.
- Supports multiple Angular applications with shared codebase in a single instance of the seed.
- Official Angular i18n support.
- Ready to go, statically typed build system using gulp for working with TypeScript.
- Production and development builds.
- **Ahead-of-Time** compilation support.
- Sample unit tests with Jasmine and Karma including code coverage via [istanbul](https://gotwarlost.github.io/istanbul/).
- End-to-end tests with Protractor.
- Development server with Livereload.
- Following the [best practices](https://angular.io/styleguide).
- Manager of your type definitions using @types.
- Has autoprefixer and css-lint support.
# How to start
**Note** that this seed project requires node v4.x.x or higher and npm 2.14.7 but in order to be able to take advantage of the complete functionality we **strongly recommend node >=v6.5.0 and npm >=3.10.3**.
**Here is how to [speed-up the build on Windows](https://github.com/mgechev/angular-seed/wiki/Speed-up-the-build-on-Windows)**.
In order to start the seed use:
```bash
git clone --depth 1 https://github.com/mgechev/angular-seed.git
cd angular-seed
# install the project's dependencies
npm install
# watches your files and uses livereload by default
npm start
# api document for the app
# npm run build.docs
# to start deving with livereload site and coverage as well as continuous testing
npm run start.deving
# dev build
npm run build.dev
# prod build
npm run build.prod
# prod build with AoT compilation
npm run build.prod.exp
# dev build of multiple applications (by default the value of --app is "app")
npm start -- --app baz
npm start -- --app foo
npm start -- --app bar
```
_Does not rely on any global dependencies._
# Table of Contents
- [Introduction](#introduction)
- [How to start](#how-to-start)
- [Table of Content](#table-of-content)
- [Configuration](#configuration)
- [Environment Configuration](#environment-configuration)
- [Tools documentation](#tools-documentation)
- [How to extend?](#how-to-extend)
- [Running tests](#running-tests)
- [Contributing](#contributing)
- [Advanced Seed Option](#advanced-seed-option)
- [Examples](#examples)
- [Directory Structure](#directory-structure)
- [Contributors](#contributors)
- [Wiki Contributors](#wiki-contributors)
- [Change Log](#change-log)
- [License](#license)
# Configuration
Default application server configuration
```js
var PORT = 5555;
var LIVE_RELOAD_PORT = 4002;
var DOCS_PORT = 4003;
var APP_BASE = '/';
```
Configure at runtime
```bash
npm start -- --port 8080 --reload-port 4000 --base /my-app/
```
## Environment configuration
If you have different environments and you need to configure them to use different end points, settings, etc. you can use the files `dev.ts` or `prod.ts` in`./tools/env/`. The name of the file is environment you want to use.
The environment can be specified by using:
```bash
npm start -- --config-env ENV_NAME
```
Currently the `ENV_NAME`s are `dev`, `prod`, `staging`, but you can simply add a different file `"ENV_NAME.ts".` file in order to alter extra such environments.
# Tools documentation
A documentation of the provided tools can be found in [tools/README.md](tools/README.md).
# How to extend?
Visit the [Wiki page](https://github.com/mgechev/angular-seed/wiki) of the project.
# Running tests
```bash
npm test
# Development. Your app will be watched by karma
# on each change all your specs will be executed.
npm run test.watch
# NB: The command above might fail with a "EMFILE: too many open files" error.
# Some OS have a small limit of opened file descriptors (256) by default
# and will result in the EMFILE error.
# You can raise the maximum of file descriptors by running the command below:
ulimit -n 10480
# code coverage (istanbul)
# auto-generated at the end of `npm test`
# view coverage report:
npm run serve.coverage
# e2e (aka. end-to-end, integration) - In three different shell windows
# Make sure you don't have a global instance of Protractor
# Make sure you do have Java in your PATH (required for webdriver)
# npm install webdriver-manager <- Install this first for e2e testing
# npm run webdriver-update <- You will need to run this the first time
npm run webdriver-start
npm run serve.e2e
npm run e2e
# e2e live mode - Protractor interactive mode
# Instead of last command above, you can use:
npm run e2e.live
```
You can learn more about [Protractor Interactive Mode here](https://github.com/angular/protractor/blob/master/docs/debugging.md#testing-out-protractor-interactively)
# Contributing
Please see the [CONTRIBUTING](https://github.com/mgechev/angular-seed/blob/master/.github/CONTRIBUTING.md) file for guidelines.
# Advanced Seed Option
An [advanced option to this seed exists here](https://github.com/NathanWalker/angular-seed-advanced) which mirrors the latest changes here but adds core support for:
- [ngrx/store](https://github.com/ngrx/store) RxJS powered state management, inspired by **Redux**
- [ngrx/effects](https://github.com/ngrx/effects) Side effect model for @ngrx/store
- [ng2-translate](https://github.com/ocombe/ng2-translate) for i18n
- Usage is optional but on by default
- Up to you and your team how you want to utilize it. It can be easily removed if not needed.
- [angulartics2](https://github.com/angulartics/angulartics2) Vendor-agnostic analytics for Angular applications.
- Out of box support for [Segment](https://segment.com/)
- When using the seed, be sure to change your `write_key` [here](https://github.com/NathanWalker/angular-seed-advanced/blob/master/src/client/index.html#L24)
- Can be changed to any vendor, [learn more here](https://github.com/angulartics/angulartics2#supported-providers)
- [lodash](https://lodash.com/) Helps reduce blocks of code down to single lines and enhances readability
- [NativeScript](https://www.nativescript.org/) cross platform mobile (w/ native UI) apps. [Setup instructions here](#nativescript-app).
- [Electron](http://electron.atom.io/) cross platform desktop apps (Mac, Windows and Linux). [Setup instructions here](#electron-app).
You may use it to learn how to extend this seed for your own use cases or use the advanced seed if your project needs those features.
# Examples
Forks of this project demonstrate how to extend and integrate with other libraries:
- https://github.com/mgechev/switching-to-angular2 - code samples for the book ["Switching to Angular 2"](https://www.packtpub.com/web-development/switching-angular-2).
- https://github.com/DeviantJS/angular2-seed-postcss - Extending PostCSS with precss / cssnext for Sass-like features.
- https://github.com/DeviantJS/angular2-seed-material2 - integration with [Angular2-Material](https://github.com/angular/material2).
- https://github.com/AngularShowcase/angular2-sample-app - sample Angular application.
- https://github.com/AngularShowcase/ng2-bootstrap-sbadmin - ng2-bootstrap-sbadmin.
- https://github.com/AngularShowcase/angular2-seed-ng2-highcharts - Simple application including a [Highcharts](http://www.highcharts.com) graph.
- https://github.com/tarlepp/angular-sailsjs-boilerplate-frontend-angular2 - Example application for [Sails.js](http://sailsjs.org/) integration.
- https://github.com/ludohenin/ng2-wp-blog - Angular application using Wordpress [JSON-API](http://v2.wp-api.org) backend..
- https://github.com/AngularShowcase/angular2-seed-example-mashup - Angular application demonstrating the use of [Redux](http://redux.js.org/), [D3](https://github.com/mbostock/d3), [socket io](https://github.com/socketio), [Google Charts](https://developers.google.com/chart/), and [RxJs](https://github.com/Reactive-Extensions/RxJS).
- https://github.com/tiagomapmarques/angular2-seed-phaser/tree/releases - integration with [Phaser](http://phaser.io/).
- https://github.com/vyakymenko/angular2-seed-express - integration with [Express](https://expressjs.com/) full-stack development.
- https://github.com/UIUXEngineering/angular2-jspm-typescript-seed - integration with [JSPM](http://jspm.io/).
# Directory Structure
```
.
├── LICENSE
├── README.md
├── gulpfile.ts <- configuration of the gulp tasks
├── karma.conf.js <- configuration of the test runner
├── package.json <- dependencies of the project
├── protractor.conf.js <- e2e tests configuration
├── src <- source code of the application
│ └── client
│ ├── app
│ │ ├── +about
│ │ │ ├── about.component.css
│ │ │ ├── about.component.e2e-spec.ts
│ │ │ ├── about.component.html
│ │ │ ├── about.component.spec.ts
│ │ │ ├── about.component.ts
│ │ │ ├── about.module.ts
│ │ │ ├── about.routes.ts
│ │ │ └── index.ts
│ │ ├── +home
│ │ │ ├── home.component.css
│ │ │ ├── home.component.e2e-spec.ts
│ │ │ ├── home.component.html
│ │ │ ├── home.component.spec.ts
│ │ │ ├── home.component.ts
│ │ │ ├── home.module.ts
│ │ │ ├── home.routes.ts
│ │ │ └── index.ts
│ │ ├── app.component.e2e-spec.ts
│ │ ├── app.component.html
│ │ ├── app.component.spec.ts
│ │ ├── app.component.ts
│ │ ├── app.module.ts
│ │ ├── app.routes.ts
│ │ ├── hot_loader_main.ts
│ │ ├── main.ts
│ │ └── shared
│ │ ├── config
│ │ │ └── env.config.ts
│ │ ├── index.ts
│ │ ├── shared.module.ts
│ │ ├── name-list
│ │ │ ├── index.ts
│ │ │ ├── name-list.service.spec.ts
│ │ │ └── name-list.service.ts
│ │ ├── navbar
│ │ │ ├── index.ts
│ │ │ ├── navbar.component.css
│ │ │ ├── navbar.component.html
│ │ │ └── navbar.component.ts
│ │ └── toolbar
│ │ ├── index.ts
│ │ ├── toolbar.component.css
│ │ ├── toolbar.component.html
│ │ └── toolbar.component.ts
│ ├── assets
│ │ ├── data.json
│ │ └── svg
│ │ └── more.svg
│ ├── css
│ │ └── main.css
│ ├── index.html
│ ├── testing
│ │ └── router
│ │ ├── mock-location-strategy.ts
│ │ └── router-testing-providers.ts
│ └── tsconfig.json
├── test-main.js <- testing configuration
├── tools
│ ├── README.md <- build documentation
│ ├── config
│ │ ├── project.config.ts <- configuration of the specific project
│ │ ├── seed.config.interfaces.ts
│ │ └── seed.config.ts <- generic configuration of the seed project
│ │ └── seed.tslint.json <- generic tslint configuration of the seed project
│ ├── config.ts <- exported configuration (merge both seed.config and project.config, project.config overrides seed.config)
│ ├── debug.ts
│ ├── env <- environment configuration
│ │ ├── base.ts
│ │ ├── dev.ts
│ │ └── prod.ts
│ ├── manual_typings
│ │ ├── project <- manual ambient typings for the project
│ │ │ └── sample.package.d.ts
│ │ └── seed <- seed manual ambient typings
│ │ ├── autoprefixer.d.ts
│ │ ├── colorguard.d.ts
│ │ ├── connect-livereload.d.ts
│ │ ├── cssnano.d.ts
│ │ ├── doiuse.d.ts
│ │ ├── express-history-api-fallback.d.ts
│ │ ├── istream.d.ts
│ │ ├── karma.d.ts
│ │ ├── merge-stream.d.ts
│ │ ├── open.d.ts
│ │ ├── postcss-reporter.d.ts
│ │ ├── slash.d.ts
│ │ ├── stylelint.d.ts
│ │ ├── systemjs-builder.d.ts
│ │ ├── tildify.d.ts
│ │ ├── tiny-lr.d.ts
│ │ └── walk.d.ts
│ ├── tasks <- gulp tasks
│ │ ├── project <- project specific gulp tasks
│ │ │ └── sample.task.ts
│ │ └── seed <- seed generic gulp tasks. They can be overriden by the project specific gulp tasks
│ │ ├── build.assets.dev.ts
│ │ ├── build.assets.prod.ts
│ │ ├── build.bundles.app.ts
│ │ ├── build.bundles.ts
│ │ ├── build.docs.ts
│ │ ├── build.html_css.ts
│ │ ├── build.index.dev.ts
│ │ ├── build.index.prod.ts
│ │ ├── build.js.dev.ts
│ │ ├── build.js.e2e.ts
│ │ ├── build.js.prod.ts
│ │ ├── build.js.test.ts
│ │ ├── build.js.tools.ts
│ │ ├── check.versions.ts
│ │ ├── clean.all.ts
│ │ ├── clean.coverage.ts
│ │ ├── clean.dev.ts
│ │ ├── clean.prod.ts
│ │ ├── clean.tools.ts
│ │ ├── copy.js.prod.ts
│ │ ├── css-lint.ts
│ │ ├── e2e.ts
│ │ ├── generate.manifest.ts
│ │ ├── karma.start.ts
│ │ ├── serve.coverage.ts
│ │ ├── serve.docs.ts
│ │ ├── server.prod.ts
│ │ ├── server.start.ts
│ │ ├── tslint.ts
│ │ ├── watch.dev.ts
│ │ ├── watch.e2e.ts
│ │ ├── watch.test.ts
│ │ └── webdriver.ts
│ ├── utils <- build utils
│ │ ├── project <- project specific gulp utils
│ │ │ └── sample_util.ts
│ │ ├── project.utils.ts
│ │ ├── seed <- seed specific gulp utils
│ │ │ ├── clean.ts
│ │ │ ├── code_change_tools.ts
│ │ │ ├── server.ts
│ │ │ ├── tasks_tools.ts
│ │ │ ├── template_locals.ts
│ │ │ ├── tsproject.ts
│ │ │ └── watch.ts
│ │ └── seed.utils.ts
│ └── utils.ts
├── tsconfig.json <- configuration of the typescript project (ts-node, which runs the tasks defined in gulpfile.ts)
├── tslint.json <- tslint configuration
├── typings <- typings directory. Contains all the external typing definitions defined with typings
├── typings.json
└── appveyor.yml
```
# Contributors
[
](https://github.com/mgechev) |[
](https://github.com/ludohenin) |[
](https://github.com/d3viant0ne) |[
](https://github.com/Shyam-Chen) |[
](https://github.com/NathanWalker) |[
](https://github.com/tarlepp) |
:---: |:---: |:---: |:---: |:---: |:---: |
[mgechev](https://github.com/mgechev) |[ludohenin](https://github.com/ludohenin) |[d3viant0ne](https://github.com/d3viant0ne) |[Shyam-Chen](https://github.com/Shyam-Chen) |[NathanWalker](https://github.com/NathanWalker) |[tarlepp](https://github.com/tarlepp) |
[
](https://github.com/Nightapes) |[
](https://github.com/TheDonDope) |[
](https://github.com/nareshbhatia) |[
](https://github.com/kiuka) |[
](https://github.com/hank-ehly) |[
](https://github.com/daniru) |
:---: |:---: |:---: |:---: |:---: |:---: |
[Nightapes](https://github.com/Nightapes) |[TheDonDope](https://github.com/TheDonDope) |[nareshbhatia](https://github.com/nareshbhatia) |[kiuka](https://github.com/kiuka) |[hank-ehly](https://github.com/hank-ehly) |[daniru](https://github.com/daniru) |
[
](https://github.com/njs50) |[
](https://github.com/vyakymenko) |[
](https://github.com/jesperronn) |[
](https://github.com/robstoll) |[
](https://github.com/sasikumardr) |[
](https://github.com/aboeglin) |
:---: |:---: |:---: |:---: |:---: |:---: |
[njs50](https://github.com/njs50) |[vyakymenko](https://github.com/vyakymenko) |[jesperronn](https://github.com/jesperronn) |[robstoll](https://github.com/robstoll) |[sasikumardr](https://github.com/sasikumardr) |[aboeglin](https://github.com/aboeglin) |
[
](https://github.com/markwhitfeld) |[
](https://github.com/gkalpak) |[
](https://github.com/ryzy) |[
](https://github.com/eppsilon) |[
](https://github.com/sfabriece) |[
](https://github.com/jerryorta-dev) |
:---: |:---: |:---: |:---: |:---: |:---: |
[markwhitfeld](https://github.com/markwhitfeld) |[gkalpak](https://github.com/gkalpak) |[ryzy](https://github.com/ryzy) |[eppsilon](https://github.com/eppsilon) |[sfabriece](https://github.com/sfabriece) |[jerryorta-dev](https://github.com/jerryorta-dev) |
[
](https://github.com/pgrzeszczak) |[
](https://github.com/e-oz) |[
](https://github.com/natarajanmca11) |[
](https://github.com/domfarolino) |[
](https://github.com/JayKan) |[
](https://github.com/larsthorup) |
:---: |:---: |:---: |:---: |:---: |:---: |
[pgrzeszczak](https://github.com/pgrzeszczak) |[e-oz](https://github.com/e-oz) |[natarajanmca11](https://github.com/natarajanmca11) |[domfarolino](https://github.com/domfarolino) |[JayKan](https://github.com/JayKan) |[larsthorup](https://github.com/larsthorup) |
[
](https://github.com/JakePartusch) |[
](https://github.com/LuxDie) |[
](https://github.com/amedinavalencia) |[
](https://github.com/tsm91) |[
](https://github.com/jvitor83) |[
](https://github.com/juristr) |
:---: |:---: |:---: |:---: |:---: |:---: |
[JakePartusch](https://github.com/JakePartusch) |[LuxDie](https://github.com/LuxDie) |[amedinavalencia](https://github.com/amedinavalencia) |[tsm91](https://github.com/tsm91) |[jvitor83](https://github.com/jvitor83) |[juristr](https://github.com/juristr) |
[
](https://github.com/JohnCashmore) |[
](https://github.com/ouq77) |[
](https://github.com/devanp92) |[
](https://github.com/hAWKdv) |[
](https://github.com/JunaidZA) |[
](https://github.com/c-ice) |
:---: |:---: |:---: |:---: |:---: |:---: |
[JohnCashmore](https://github.com/JohnCashmore) |[ouq77](https://github.com/ouq77) |[devanp92](https://github.com/devanp92) |[hAWKdv](https://github.com/hAWKdv) |[JunaidZA](https://github.com/JunaidZA) |[c-ice](https://github.com/c-ice) |
[
](https://github.com/markharding) |[
](https://github.com/ojacquemart) |[
](https://github.com/tiagomapmarques) |[
](https://github.com/TuiKiken) |[
](https://github.com/evanplaice) |[
](https://github.com/gotenxds) |
:---: |:---: |:---: |:---: |:---: |:---: |
[markharding](https://github.com/markharding) |[ojacquemart](https://github.com/ojacquemart) |[tiagomapmarques](https://github.com/tiagomapmarques) |[TuiKiken](https://github.com/TuiKiken) |[evanplaice](https://github.com/evanplaice) |[gotenxds](https://github.com/gotenxds) |
[
](https://github.com/turbohappy) |[
](https://github.com/karlhaas) |[
](https://github.com/troyanskiy) |[
](https://github.com/Bigous) |[
](https://github.com/ip512) |[
](https://github.com/Green-Cat) |
:---: |:---: |:---: |:---: |:---: |:---: |
[turbohappy](https://github.com/turbohappy) |[karlhaas](https://github.com/karlhaas) |[troyanskiy](https://github.com/troyanskiy) |[Bigous](https://github.com/Bigous) |[ip512](https://github.com/ip512) |[Green-Cat](https://github.com/Green-Cat) |
[
](https://github.com/Yonet) |[
](https://github.com/edud69) |[
](https://github.com/daixtrose) |[
](https://github.com/amaltsev) |[
](https://github.com/yassirh) |[
](https://github.com/bbarry) |
:---: |:---: |:---: |:---: |:---: |:---: |
[Yonet](https://github.com/Yonet) |[edud69](https://github.com/edud69) |[daixtrose](https://github.com/daixtrose) |[amaltsev](https://github.com/amaltsev) |[yassirh](https://github.com/yassirh) |[bbarry](https://github.com/bbarry) |
[
](https://github.com/nulldev07) |[
](https://github.com/taguan) |[
](https://github.com/bbarry) |[
](https://github.com/sonicparke) |[
](https://github.com/brendanbenson) |[
](https://github.com/brian428) |
:---: |:---: |:---: |:---: |:---: |:---: |
[nulldev07](https://github.com/nulldev07) |[taguan](https://github.com/taguan) |[bbarry](https://github.com/bbarry) |[sonicparke](https://github.com/sonicparke) |[brendanbenson](https://github.com/brendanbenson) |[brian428](https://github.com/brian428) |
[
](https://github.com/briantopping) |[
](https://github.com/ckapilla) |[
](https://github.com/cadriel) |[
](https://github.com/dszymczuk) |[
](https://github.com/dmurat) |[
](https://github.com/peah90) |
:---: |:---: |:---: |:---: |:---: |:---: |
[briantopping](https://github.com/briantopping) |[ckapilla](https://github.com/ckapilla) |[cadriel](https://github.com/cadriel) |[dszymczuk](https://github.com/dszymczuk) |[dmurat](https://github.com/dmurat) |[peah90](https://github.com/peah90) |
[
](https://github.com/dstockhammer) |[
](https://github.com/dwido) |[
](https://github.com/totev) |[
](https://github.com/nosachamos) |[
](https://github.com/koodikindral) |[
](https://github.com/hpinsley) |
:---: |:---: |:---: |:---: |:---: |:---: |
[dstockhammer](https://github.com/dstockhammer) |[dwido](https://github.com/dwido) |[totev](https://github.com/totev) |[nosachamos](https://github.com/nosachamos) |[koodikindral](https://github.com/koodikindral) |[hpinsley](https://github.com/hpinsley) |
[
](https://github.com/NN77) |[
](https://github.com/isidroamv) |[
](https://github.com/jeffbcross) |[
](https://github.com/Drane) |[
](https://github.com/johnjelinek) |[
](https://github.com/JunusErgin) |
:---: |:---: |:---: |:---: |:---: |:---: |
[NN77](https://github.com/NN77) |[isidroamv](https://github.com/isidroamv) |[jeffbcross](https://github.com/jeffbcross) |[Drane](https://github.com/Drane) |[johnjelinek](https://github.com/johnjelinek) |[JunusErgin](https://github.com/JunusErgin) |
[
](https://github.com/justindujardin) |[
](https://github.com/lihaibh) |[
](https://github.com/Brooooooklyn) |[
](https://github.com/tandu) |[
](https://github.com/inkidotcom) |[
](https://github.com/daixtrose) |
:---: |:---: |:---: |:---: |:---: |:---: |
[justindujardin](https://github.com/justindujardin) |[lihaibh](https://github.com/lihaibh) |[Brooooooklyn](https://github.com/Brooooooklyn) |[tandu](https://github.com/tandu) |[inkidotcom](https://github.com/inkidotcom) |[daixtrose](https://github.com/daixtrose) |
[
](https://github.com/oferze) |[
](https://github.com/ocombe) |[
](https://github.com/gdi2290) |[
](https://github.com/typekpb) |[
](https://github.com/philipooo) |[
](https://github.com/redian) |
:---: |:---: |:---: |:---: |:---: |:---: |
[oferze](https://github.com/oferze) |[ocombe](https://github.com/ocombe) |[gdi2290](https://github.com/gdi2290) |[typekpb](https://github.com/typekpb) |[philipooo](https://github.com/philipooo) |[redian](https://github.com/redian) |
[
](https://github.com/alexweber) |[
](https://github.com/robbatt) |[
](https://github.com/robertpenner) |[
](https://github.com/Sjiep) |[
](https://github.com/sclausen) |[
](https://github.com/heavymery) |
:---: |:---: |:---: |:---: |:---: |:---: |
[alexweber](https://github.com/alexweber) |[robbatt](https://github.com/robbatt) |[robertpenner](https://github.com/robertpenner) |[Sjiep](https://github.com/Sjiep) |[sclausen](https://github.com/sclausen) |[heavymery](https://github.com/heavymery) |
[
](https://github.com/tapas4java) |[
](https://github.com/valera-rozuvan) |[
](https://github.com/vincentpalita) |[
](https://github.com/Yalrafih) |[
](https://github.com/billsworld) |[
](https://github.com/blackheart01) |
:---: |:---: |:---: |:---: |:---: |:---: |
[tapas4java](https://github.com/tapas4java) |[valera-rozuvan](https://github.com/valera-rozuvan) |[vincentpalita](https://github.com/vincentpalita) |[Yalrafih](https://github.com/Yalrafih) |[billsworld](https://github.com/billsworld) |[blackheart01](https://github.com/blackheart01) |
[
](https://github.com/butterfieldcons) |[
](https://github.com/danielcrisp) |[
](https://github.com/jgolla) |[
](https://github.com/omerfarukyilmaz) |[
](https://github.com/pbazurin-softheme) |[
](https://github.com/rossedfort) |
:---: |:---: |:---: |:---: |:---: |:---: |
[butterfieldcons](https://github.com/butterfieldcons) |[danielcrisp](https://github.com/danielcrisp) |[jgolla](https://github.com/jgolla) |[omerfarukyilmaz](https://github.com/omerfarukyilmaz) |[pbazurin-softheme](https://github.com/pbazurin-softheme) |[rossedfort](https://github.com/rossedfort) |
[
](https://github.com/savcha) |[
](https://github.com/ultrasonicsoft) |[
](https://github.com/taguan) |
:---: |:---: |:---: |
[savcha](https://github.com/savcha) |[ultrasonicsoft](https://github.com/ultrasonicsoft) |[taguan](https://github.com/taguan) |
## Wiki Contributors
Here are all the awesome guys who are helping to make the project's wiki even better!
```
40 Minko Gechev
22 Clayton K. N. Passos
15 Shyam-Chen
14 Vincent van Proosdij
8 matthew harwood
8 Christian Dobert
8 Robert van Kints
6 Ludovic HENIN
5 Attila Egyed
4 davidgfolch
4 Chris Kapilla
3 Stefan Schüller
3 Patrick Hillert
3 Ezequiel Cicala
3 Brian Kotek
2 Nathan Walker
2 Dinsitro
2 Drake Wilson
2 Simon Hampton
2 Yannick Koehler
2 Giovanni Candido da Silva
2 hhubik
2 Joshua Wiens
2 Cy Klassen
1 zcsongor
1 Ameer Nuri
1 Ankit Kamboj
1 BouncingBit
1 Dang Tung
1 Eddie Sun
1 Enrico Secondulfo
1 Eugene Serkin
1 Ishara Samantha
1 Myrmex
1 Pol Stafford
1 Raphael Schmitt
1 Robert Stoll
1 Sebastian Fuss
1 Sebastien de Salvador
1 The Ult
1 Yonet
1 graham
1 kiuka
1 silicakes
1 Adam Johannesmeyer
```
# Change Log
You can follow the [Angular change log here](https://github.com/angular/angular/blob/master/CHANGELOG.md).
# License
MIT