diff --git a/app/components/architecture-viewer.js b/app/components/architecture-viewer.js
index bc0595cfdd8d982f76a40dbdd227ae8c2bc30621..acc7b1292793a2c5ebfb4b9e8ea8d57b5a1da69a 100644
--- a/app/components/architecture-viewer.js
+++ b/app/components/architecture-viewer.js
@@ -1,11 +1,16 @@
 import Ember from 'ember';
+import Themes from './architecture-visualisation-cytoscape/themes';
+
+
 
 export default Ember.Component.extend({
     graph: null,
     layoutAlgorithm: 'cose',
+    theme: Themes[Object.keys(Themes)[0]], // first theme
+    themes: Object.keys(Themes),
     layoutAlgorithms: [
         'cose',
-        // 'cose-bilkent', // broken
+        'cose-bilkent', // broken
         'cola',
         'grid',
         'concentric',
@@ -19,6 +24,9 @@ export default Ember.Component.extend({
         selectLayoutAlgorithm(value) {
             this.debug('value', value);
             this.set('layoutAlgorithm', value);
+        },
+        selectTheme(theme) {
+            this.set('theme', Themes[theme]);
         }
     }
 });
diff --git a/app/components/architecture-visualisation-cytoscape/component.js b/app/components/architecture-visualisation-cytoscape/component.js
index 215d492233d8f2c8735abea7b6af659d6c0a4bf8..199c423b8853809a46a2f59afbfdd1c43523d6d9 100644
--- a/app/components/architecture-visualisation-cytoscape/component.js
+++ b/app/components/architecture-visualisation-cytoscape/component.js
@@ -9,6 +9,7 @@ import coseBilkent from 'npm:cytoscape-cose-bilkent';
 coseBilkent(cytoscape); // register
 
 export default Ember.Component.extend({
+    theme: null,
     layoutAlgorithm: 'cose',
     classNames: ['cytoscapeRenderingSpace'],
     init: function() {
@@ -19,33 +20,18 @@ export default Ember.Component.extend({
     willDestroyElement() {
         clearInterval(this.interval);
     },
-    layoutChanged: Ember.observer('layout', function(newLayout) {
+    layoutChanged: function(newLayout) {
         this.debug('layout changed!', newLayout);
-    }),
+    }.observes('layout'),
     renderGraph: function() {
-        this.debug('graph', this.get('graph'));
+        this.debug('graph',this.get('theme'), this.get('graph'));
         this.cytoscape = cytoscape({
           container: this.element,
 
           boxSelectionEnabled: false,
           autounselectify: true,
 
-          style: cytoscapeStyle({
-                  nodeGroupTextColor: '#3399CC',
-                  nodeGroupColor: 'white',
-                  borderColor: '#39588A',
-
-                  nodeColor: '#B4DCED',
-                  nodeTextColor: '#3399CC',
-
-                  serviceColor: '#E8F8FF',
-                  serviceTextColor: '#3399CC',
-
-                  arrowBorderColor: '#3399CC',
-                  arrowColor: '#3399CC',
-                  arrowLabelColor: 'black'
-              }
-          ),
+          style: cytoscapeStyle(this.get('theme')),
 
           elements: _.cloneDeep(this.get('graph')), // TODO!
 
@@ -60,5 +46,5 @@ export default Ember.Component.extend({
 
         window.cy = cytoscape;
         window.cytoscape = this.cytoscape;
-    }.on('didInsertElement').observes('layoutAlgorithm', 'graph')
+    }.on('didInsertElement').observes('layoutAlgorithm', 'graph', 'theme')
 });
diff --git a/app/components/architecture-visualisation-cytoscape/themes.js b/app/components/architecture-visualisation-cytoscape/themes.js
new file mode 100644
index 0000000000000000000000000000000000000000..2baa5addbd40733dac8486154f2b24d358dfa13f
--- /dev/null
+++ b/app/components/architecture-visualisation-cytoscape/themes.js
@@ -0,0 +1,14 @@
+export default {
+    'arctic': {
+        nodeGroupTextColor: '#3399CC',
+        nodeGroupColor: 'white',
+        borderColor: '#39588A',
+        nodeColor: '#B4DCED',
+        nodeTextColor: '#3399CC',
+        serviceColor: '#E8F8FF',
+        serviceTextColor: '#3399CC',
+        arrowBorderColor: '#3399CC',
+        arrowColor: '#3399CC',
+        arrowLabelColor: 'black'
+    }
+};
\ No newline at end of file
diff --git a/app/templates/components/architecture-viewer.hbs b/app/templates/components/architecture-viewer.hbs
index 9f185d50cc106720327c8613f1b3e02b1f2d901a..ce7d54bd50f70c1ba45e8b353c3b5eb862810493 100644
--- a/app/templates/components/architecture-viewer.hbs
+++ b/app/templates/components/architecture-viewer.hbs
@@ -1,6 +1,6 @@
 <div class="row">
     <div class="col-md-10 visualisationContainer">
-        {{architecture-visualisation-cytoscape graph=graph layoutAlgorithm=layoutAlgorithm}}
+        {{architecture-visualisation-cytoscape graph=graph layoutAlgorithm=layoutAlgorithm theme=theme}}
     </div>
     <div class="col-md-2">
         <div class="form-group">
@@ -11,6 +11,14 @@
             {{/each}}
           </select>
         </div>
+        <div class="form-group">
+          <label for="layoutTheme">Theme:</label>
+          <select class="form-control" id="layoutTheme" onchange={{action "selectTheme" value="target.value"}}>
+            {{#each themes as |theme|}}
+                <option>{{theme}}</option>
+            {{/each}}
+          </select>
+        </div>
     </div>
 </div>