This repository was archived by the owner on Sep 8, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 9
Project Dependencies
Tim Donohue edited this page Apr 5, 2016
·
17 revisions
This page seeks to document all the dependencies / tools used by our project along with the reason(s) why they are being used.
All app dependencies are pulled in via NPM package manager, see our package.json.
Per the Angular 2 dependency recommendations, our NPM dependencies are split into dependencies (core dependencies) and devDependencies (development dependencies) within the package.json configuration.
-
The
dependenciessection should include feature packages (e.g. Angular 2 itself) and polyfills
- Polyfills are Javascript packages that plug gaps in the browser's Javascript implementation. Angular requires certain polyfills (to support cross-browser compatibility and latest Javascript features). The polyfills that Angular 2 currently requires are listed at https://angular.io/docs/ts/latest/guide/npm-packages.html#!#polyfill-packages
-
The
devDependenciessection should include packages that help us develop/transpile the application. They do not need to be deployed with the production application.
-
angular2- UI framework (obviously) -
angular2-express-engine- Required by Angular Universal -
angular2-hapi-engine- Required by Angular Universal -
angular2-universal-preview(Angular Universal) - Provides server-side Javascript rendering (i.e. "universal" or isomorphic javascript) for Angular 2 -
angular2-universal-polyfills- Polyfills for Angular Universal. Required by Angular Universal angular2-websocketexpressjquery-
preboot- Tool that allows you to record and playback any browser events that occur while the client-side application is loading. Angular Universal uses this to control a server-rendered page and transfer state to the client-side app.. Required by Angular Universal -
rxjs- A polyfill for the "Observables specification" currently under approval by the committee who determines standards for the JavaScript language. Required by Angular Universal -
zone.js- A polyfill for the "Zone specification" currently under approval by the committee who determines standards for the JavaScript language. Required by Angular Universal
bootstrap-loaderbootstrap-sassbootstrap-sass-loadercommander-
concurrently- used to run multiplenpmcommands concurrently on Linux, Windows and Mac -
css-loader- CSS loader for WebPack. Used in ourwebpack.config.jsto process .scss files file-loaderhttp-proxynode-sass-
nodemon- used to automatically restart the server when source code changes. See also our nodemon.json for configuration. resolve-url-loader-
rimraf- provides the Unix commandrm -rffor Node / NPM. Used by ourpackage.jsonto cleanup olddistdirectories. -
sass-loader- SASS loader for WebPack. Used in ourwebpack.config.jsto process .scss files ssl-root-cas-
style-loader- Style loader for WebPack. Used in ourwebpack.config.jsto process .scss files -
ts-loader- TypeScript loader for WebPack. Used in ourwebpack.config.jsto process TypeScript files -
typedoc- Generates documentations from TypeScript comments (like JavaDocs but for TypeScript). -
typescript- The TypeScript language server and compiler. We use the TypeScript language to build all UI components. See also our TypeScript Guidelines and our tsconfig.json configuration file. -
typings- Manager for all third-party TypeScript definitions. See also our typings.json for configuration. url-loaderwebpackwebpack-dev-serverwebpack-mergews