https://github.com/gerhardberger/angular-hatch
A birthplace for angular apps with fast compilation and optimizations.
https://github.com/gerhardberger/angular-hatch
angular aot karma tree-shaking webpack
Last synced: about 2 months ago
JSON representation
A birthplace for angular apps with fast compilation and optimizations.
- Host: GitHub
- URL: https://github.com/gerhardberger/angular-hatch
- Owner: gerhardberger
- License: mit
- Created: 2017-07-23T20:28:01.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2017-07-23T20:32:55.000Z (almost 9 years ago)
- Last Synced: 2025-06-29T06:42:28.809Z (about 1 year ago)
- Topics: angular, aot, karma, tree-shaking, webpack
- Language: JavaScript
- Size: 42 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: license
Awesome Lists containing this project
README
# angular-hatch
An Angular app for starting point with minimal, but thourough tooling.
It uses **Angular 4** and bundles the app with **webpack 3** with optimizations.
It also supports unit testing with **karma**. The main goal was to achieve fast
compilations for testing and development, and the best optimization for
production builds.
## Install
```
$ git clone https://github.com/gerhardberger/angular-hatch.git
$ cd angular-hatch
$ npm i
```
## Testing
Testing is done with **jasmine** and **karma**. For now, only unit tests are
set up and they are bundled with **webpack**. Watch mode is supported.
```
$ npm t
$ npm run test:watch
```
## Building
**webpack** is used for bundling. Compiling HTML templates is also supported.
### Development
Building for development environment doesn't make any optimization thus
achieving fast compilation. It uses **awesome-typescript-loader** for
compilation. Watch mode and linting is supported.
```
$ npm run build
$ npm run build:watch
$ npm run lint
```
### Production
Building for production aims for efficiency, smallest resulting filesize and
fastest code. The generated bundle is an **Ahead of Time** compiled code,
tree-shaken with the **babili** plugin and minified with **UglifyJS**.
```
npm run build:prod
```