diff --git a/src/app/core/index.ts b/src/app/core/index.ts
index 270541b..d93e627 100644
--- a/src/app/core/index.ts
+++ b/src/app/core/index.ts
@@ -6,6 +6,7 @@
 import {xosTable} from './table/table';
 import {RuntimeStates} from './services/runtime-states';
 import {NavigationService} from './services/navigation';
+import {PageTitle} from './services/page-title';
 
 export const xosCore = 'xosCore';
 
@@ -14,6 +15,7 @@
   .config(routesConfig)
   .provider('RuntimeStates', RuntimeStates)
   .service('NavigationService', NavigationService)
+  .service('PageTitle', PageTitle)
   .component('xosHeader', xosHeader)
   .component('xosFooter', xosFooter)
   .component('xosNav', xosNav)
diff --git a/src/app/core/services/page-title.ts b/src/app/core/services/page-title.ts
new file mode 100644
index 0000000..6f7e0c3
--- /dev/null
+++ b/src/app/core/services/page-title.ts
@@ -0,0 +1,33 @@
+import {StyleConfig} from '../../config/style.config';
+export interface IXosPageTitleService {
+  get(): string;
+  set(title: string): void;
+  formatStateName(stateName: string): string;
+}
+
+export class PageTitle {
+  static $inject = ['$window', '$transitions'];
+  constructor(
+    private $window: angular.IWindowService,
+    private $transitions: any // missing definition
+  ) {
+    console.log('page title');
+    this.$transitions.onSuccess({ to: '**' }, (transtion) => {
+      this.set(this.formatStateName(transtion.$to().name));
+    });
+  }
+
+  get() {
+    return this.$window.document.title;
+  }
+
+  set(title: string) {
+    this.$window.document.title = `${StyleConfig.projectName} - ${title}`;
+  }
+
+  private formatStateName(stateName: string): string {
+    // TODO pluralize and capitalize first letter only
+    return stateName.replace('xos.', '').toUpperCase();
+  }
+}
+
