Angular-Polymer
angular-polymer
is a directive factory that aims at bridging the gaps between using Polymer based Web Components in Angular applications.
Note: Currently Angular-Polymer only works with Angular 2.x, or Angular-CLI 1.0.0-rc.2 and lower. Work is being done to upgrade the library to work the latest Angular & CLI. Want to help Contribute?
In case you are using Angular 4+ and Polymer 2+ you might want to check out https://github.com/hotforfeature/origami
import { NgModule, CUSTOM_ELEMENTS_SCHEMA, Component } from '@angular/core';
import { PolymerModule, PolymerElement } from '@vaadin/angular2-polymer';
@NgModule({
imports: [ PolymerModule ],
declarations: [
AppComponent,
PolymerElement('paper-input'),
PolymerElement('vaadin-combo-box')
],
bootstrap: [ AppComponent ],
schemas: [ CUSTOM_ELEMENTS_SCHEMA ]
})
export class AppModule { }
@Component({
selector: 'app-component',
template: `
<paper-input [(value)]="myValue"></paper-input>
<vaadin-combo-box [(value)]="myValue" [items]="myItems"></vaadin-combo-box>
`
})
class AppComponent {
myValue = 'A';
myItems = ['A', 'B', 'C'];
}
Getting started
See the overview for a quick start.
See the tutorial for complete instructions on how to use angular-polymer
and how to build a working application with Angular data binding and routes.
If you are using Webpack in your project, see the specific document on how to build angular-polymer apps with webpack.
Demo app
The Expense Manager demo is an example of a real world application built using Angular and Polymer web components.
Where to get Polymer web components
For high quality Polymer web components, see the Webcomponents Element Catalog and Vaadin Elements.
Development
Familiarize yourself with the code and try to follow the same syntax conventions to make it easier for us to accept your pull requests.
Discuss / exchange ideas and ask questions here: https://polymer.slack.com/messages/polymer-angular/
Getting the Code
- Clone the angular-polymer project:
$ git clone https://github.com/platosha/angular-polymer.git
$ cd angular-polymer
- Install dependencies. We assume that you have already installed
npm
in your system.
$ npm install
Running Tests
For running the tests you need Bower installed.
Then, you can download all bower dependencies needed by the Tests.
$ bower install
Finally, you can run the tests by typing:
$ npm test
Optionally, you can watch for the source changes and keep the tests running automatically:
$ npm run test:w
License
Apache License 2.0