diff --git a/README.md b/README.md
index af0b230..68132fa 100644
--- a/README.md
+++ b/README.md
@@ -2,6 +2,7 @@
Sketching out hosting Angular Components as Custom Elements / Web Components
+##### Note : Scroll down to see development guidelines
#### Angular Component API (4.x)
@@ -86,3 +87,25 @@ class MyCustomElement extends HTMLElement {
```
+
+#### Development
+
+Install the dependencies
+
+```bash
+npm install
+#or
+yarn
+```
+
+Build the demos
+```bash
+npm run build
+```
+
+You can serve the project using any server, for instance [http-server](https://www.npmjs.com/package/http-server)
+```bash
+http-server ./public
+
+#navigate to localhost:8080
+```
diff --git a/public/stop-watch-app.html b/public/stop-watch-app.html
new file mode 100644
index 0000000..55ea98b
--- /dev/null
+++ b/public/stop-watch-app.html
@@ -0,0 +1,15 @@
+
+
+
+
+
+ Ng Elements Playground
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/demos/stop-watch/stop-watch-app.ngelement.ts b/src/demos/stop-watch/stop-watch-app.ngelement.ts
new file mode 100644
index 0000000..7a7af1c
--- /dev/null
+++ b/src/demos/stop-watch/stop-watch-app.ngelement.ts
@@ -0,0 +1,4 @@
+import nge from '../../custom_element_adapter'
+import { StopWatchAppNgFactory } from '../../ngfactory/src/demos/stop-watch/stop-watch.app.ngfactory';
+
+nge.define( StopWatchAppNgFactory );
diff --git a/src/demos/stop-watch/stop-watch-module.ts b/src/demos/stop-watch/stop-watch-module.ts
new file mode 100644
index 0000000..f74d411
--- /dev/null
+++ b/src/demos/stop-watch/stop-watch-module.ts
@@ -0,0 +1,11 @@
+import { NgModule } from '@angular/core'
+import { NgDirectivesModule } from '../../directives/ng_directives'
+import { StopWatchApp } from './stop-watch.app';
+import { StopWatch } from './stop-watch';
+
+@NgModule({
+ id: 'stop-watch-app',
+ imports: [ NgDirectivesModule ],
+ declarations: [ StopWatchApp, StopWatch ]
+})
+export class StopWatchAppModule {}
diff --git a/src/demos/stop-watch/stop-watch.app.ts b/src/demos/stop-watch/stop-watch.app.ts
new file mode 100644
index 0000000..45c8f6a
--- /dev/null
+++ b/src/demos/stop-watch/stop-watch.app.ts
@@ -0,0 +1,157 @@
+import { Component, Input, ViewEncapsulation, ChangeDetectorRef } from '@angular/core'
+import { BehaviorSubject } from 'rxjs/BehaviorSubject';
+
+export class WatchService {
+ /**
+ * @author Ahsan Ayaz
+ * @desc Calculates the units and sets in string format.
+ * @param unit value of the unit in numbers
+ * @return {string} the string representation of the unit's value with at least 2 digits
+ */
+ getTimeString(unit: number): string {
+ return (unit ? (unit> 9 ? unit : "0" + unit) : '00').toString();
+ }
+}
+
+
+@Component({
+ selector: 'stop-watch-app',
+ template: `
+