Skip to content

shedar/universal-starter

 
 

Repository files navigation

<img src="https://cloud.githubusercontent.com/assets/1016365/10639063/138338bc-7806-11e5-8057-d34c75f3cafc.png" alt="Universal Angular 2" height="320"/>

Angular 2 Universal Starter Universal Angular 2

Server-Side Rendering for Angular 2

A minimal Angular 2 starter for Universal JavaScript using TypeScript 2 and Webpack 2

If you're looking for the Angular Universal repo go to angular/universal

Deploy

Installation

  • npm install

Serve

  • npm start to build your client app and start a web server
  • npm run build to prepare a distributable bundle

Development

  • run npm start and npm run watch in two separate terminals to build your client app, start a web server, and allow file changes to update in realtime

Watch files

  • npm run watch to build your client app and start a web server

Edge case of server compatibility with Promise polyfills

If you have node modules with promise polyfill dependency on server - there is chance to get the following exception:

Error: Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.

It occurs because Zone.js Promise implementation is not detected as Promise by some polyfills (e.g. es6-promise before 4.x).

To sort it out, you need such polyfills initialized before zone.js. Zone.js is initialized in 'angular2-universal-polyfills' import of server.ts. So import problematic modules before this line.

Documentation

Design Doc

Videos

Angular 2 Universal Patterns - ng-conf, May 2016
Angular 2 Universal Patterns

Angular Universal Source Code - ReadTheSource, January 2016
Angular Universal Source Code

Full Stack Angular 2 - AngularConnect, Oct 2015
Full Stack Angular 2

Angular 2 Server Rendering - Angular U, July 2015
Angular 2 Server Rendering

Control server-rendered page and transfer state before client-side web app loads to the client-side-app.

License

MIT License

About

Angular 2 Universal starter kit by @AngularClass

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 96.4%
  • HTML 3.6%