@ngx-universal/express-engine
Version:
Express engine for Angular Universal
70 lines (52 loc) • 2.53 kB
Markdown
# @ngx-universal/express-engine
Express engine for **Angular Universal**
[](https://www.npmjs.com/package/@ngx-universal/express-engine)
> Please support this project by simply putting a Github star. Share this library with friends on Twitter and everywhere else you can.
## Table of contents:
- [Prerequisites](#prerequisites)
- [Getting started](#getting-started)
- [Installation](#installation)
- [Examples](#examples)
- [Related packages](#related-packages)
- [Adding `@ngx-universal/express-engine` to your project (SystemJS)](#adding-ngx-universalexpress-engine-to-your-project-systemjs)
- [server configuration](#server-configuration)
- [Usage](#usage)
- [License](#license)
## Prerequisites
This package depends on `@angular v4.0.0`.
Also, please ensure that you are using **`Typescript v2.1.6`** or higher.
## Getting started
### Installation
You can install **`@ngx-universal/express-engine`** using `npm`
```
npm install @ngx-universal/express-engine --save
```
### Examples
- [ng-seed/universal] is an officially maintained seed project, showcasing common patterns and best practices for **`@ngx-universal/express-engine`**.
### Adding `@ngx-universal/express-engine` to your project (SystemJS)
Add `map` for **`@ngx-universal/express-engine`** in your `systemjs.config`
```javascript
'@ngx-universal/express-engine': 'node_modules/@ngx-universal/express-engine/bundles/express-engine.umd.min.js'
```
### server configuration
Import `ngExpressEngine` using the mapping `'@ngx-universal/express-engine'` on your **server configuration** (*ex: server.ts*) and bootstrap the `AppServerModule` (*considering app.server.module is the server module in Angular Universal application*) using `ngExpressEngine` as follows:
```TypeScript
...
import * as express from 'express';
import { ngExpressEngine } from '@ngx-universal/express-engine';
import { AppServerModule } from './app.server.module';
...
const server = express();
server.engine('html', ngExpressEngine({
bootstrap: AppServerModule
}));
server.set('view engine', 'html');
server.set('views', 'public');
...
```
> :+1: Wow! **`@ngx-universal/express-engine`** will now bootstrap the `AppServerModule` on the **server** platform.
## License
The MIT License (MIT)
Copyright (c) 2017 [Burak Tasci]
[ng-seed/universal]: https://github.com/ng-seed/universal
[Burak Tasci]: https://github.com/fulls1z3