diff --git a/frontend-js/src/main/css/global.css b/frontend-js/src/main/css/global.css
index 159e6a4ecf9a6a29598e458e0fc31d99810774a9..bdef370318515c42e5ae8d480b61555aa5872348 100644
--- a/frontend-js/src/main/css/global.css
+++ b/frontend-js/src/main/css/global.css
@@ -510,7 +510,8 @@ h1 {
 
 .minerva-projects-tab .minerva-menu-row button,
 .minerva-edit-project-dialog .minerva-menu-row button,
-.minerva-users-tab .minerva-menu-row button {
+.minerva-users-tab .minerva-menu-row button,
+.minerva-genome-tab .minerva-menu-row button {
     margin: 5px;
 }
 
diff --git a/frontend-js/src/main/js/gui/admin/GenomeAdminPanel.js b/frontend-js/src/main/js/gui/admin/GenomeAdminPanel.js
index fc79970c50ed136f672ff0eb3c16c0f4c99176b6..7abf854ec353de6035bb7ca3caf24739982c2efd 100644
--- a/frontend-js/src/main/js/gui/admin/GenomeAdminPanel.js
+++ b/frontend-js/src/main/js/gui/admin/GenomeAdminPanel.js
@@ -44,6 +44,8 @@ GenomeAdminPanel.prototype._createGui = function () {
   });
   self.getElement().appendChild(genomeDiv);
 
+  genomeDiv.appendChild(self._createMenuRow());
+
   var genomesTable = Functions.createElement({
     type: "table",
     name: "genomeTable",
@@ -104,6 +106,44 @@ GenomeAdminPanel.prototype._createGui = function () {
     return self.showEditDialog(parseInt($(button).attr("data"))).catch(GuiConnector.alert);
   });
 
+  genomeDiv.appendChild(self._createMenuRow());
+
+};
+
+/**
+ *
+ * @returns {HTMLElement}
+ * @private
+ */
+GenomeAdminPanel.prototype._createMenuRow = function () {
+  var self = this;
+  var menuRow = Functions.createElement({
+    type: "div",
+    className: "minerva-menu-row",
+    style: "display:table-row; margin:10px"
+  });
+
+  var addProjectButton = Functions.createElement({
+    type: "button",
+    name: "addGenome",
+    content: '<span class="ui-icon ui-icon-circle-plus"></span>&nbsp;ADD GENOME',
+    onclick: function () {
+      return self.onAddClicked().catch(GuiConnector.alert);
+    },
+    xss: false
+  });
+  var refreshButton = Functions.createElement({
+    type: "button",
+    name: "refreshGenomes",
+    content: '<span class="ui-icon ui-icon-refresh"></span>&nbsp;REFRESH',
+    onclick: function () {
+      return self.onRefreshClicked().catch(GuiConnector.alert);
+    },
+    xss: false
+  });
+  menuRow.appendChild(addProjectButton);
+  menuRow.appendChild(refreshButton);
+  return menuRow;
 };
 
 /**
@@ -116,15 +156,24 @@ GenomeAdminPanel.prototype.init = function () {
     return self.getServerConnector().getLoggedUser();
   }).then(function (user) {
     if (user.hasPrivilege(self.getConfiguration().getPrivilegeType(PrivilegeType.MANAGE_GENOMES))) {
-      return self.getServerConnector().getReferenceGenomes().then(function (referenceGenomes) {
-        return self.setReferenceGenomes(referenceGenomes);
-      });
+      return self.onRefreshClicked();
     } else {
       self.disablePanel("You have no privilege to manage genomes");
     }
   });
 };
 
+/**
+ *
+ * @returns {Promise}
+ */
+GenomeAdminPanel.prototype.onRefreshClicked = function () {
+  var self = this;
+  return self.getServerConnector().getReferenceGenomes().then(function (referenceGenomes) {
+    return self.setReferenceGenomes(referenceGenomes);
+  });
+};
+
 /**
  *
  * @param {ReferenceGenome[]} referenceGenomes
@@ -221,7 +270,7 @@ GenomeAdminPanel.prototype.getDialog = function (genome) {
       serverConnector: self.getServerConnector()
     });
     self._dialogs[id] = dialog;
-    if (id === "null") {
+    if (id === undefined) {
       dialog.addListener("onSave", function () {
         return self.onRefreshClicked();
       });
@@ -256,5 +305,22 @@ GenomeAdminPanel.prototype.showEditDialog = function (id) {
   });
 };
 
+/**
+ *
+ * @returns {Promise}
+ */
+GenomeAdminPanel.prototype.onAddClicked = function () {
+  var self = this;
+  GuiConnector.showProcessing();
+  var referenceGenome = new ReferenceGenome();
+  return self.getDialog(referenceGenome).then(function (dialog) {
+    dialog.open();
+    GuiConnector.hideProcessing();
+  }).catch(function (error) {
+    GuiConnector.hideProcessing();
+    return Promise.reject(error);
+  });
+};
+
 
 module.exports = GenomeAdminPanel;
diff --git a/frontend-js/src/test/js/gui/admin/GenomeAdminPanel-test.js b/frontend-js/src/test/js/gui/admin/GenomeAdminPanel-test.js
index 0c0b1b69591f990aee296392fcbd36166d4fd0a8..3eb0ab70904372ca41b409736354bc6271f0b08e 100644
--- a/frontend-js/src/test/js/gui/admin/GenomeAdminPanel-test.js
+++ b/frontend-js/src/test/js/gui/admin/GenomeAdminPanel-test.js
@@ -48,6 +48,25 @@ describe('GenomeAdminPanel', function () {
     });
   });
 
+  it('open add genome dialog', function () {
+    helper.loginAsAdmin();
+    var mapTab;
+    return ServerConnector.getConfiguration().then(function (configuration) {
+      mapTab = new GenomeAdminPanel({
+        element: testDiv,
+        configuration: configuration,
+        serverConnector: ServerConnector
+      });
+      return mapTab.init();
+    }).then(function () {
+      assert.equal(0, logger.getWarnings().length);
+      var element = $("[name='addGenome']")[0];
+      return element.onclick();
+    }).then(function () {
+      return mapTab.destroy();
+    });
+  });
+
   it('remove genome', function () {
     helper.loginAsAdmin();
     var mapTab;
diff --git a/frontend-js/testFiles/apiCalls/genomics/taxonomies/9606/genomeTypes/UCSC/versions/hg38/token=ADMIN_TOKEN_ID& b/frontend-js/testFiles/apiCalls/genomics/taxonomies/9606/genomeTypes/UCSC/versions/hg38/token=ADMIN_TOKEN_ID&
new file mode 100644
index 0000000000000000000000000000000000000000..d6e3f651ae1e7ccd4ce1a774931527624d8eeb9a
--- /dev/null
+++ b/frontend-js/testFiles/apiCalls/genomics/taxonomies/9606/genomeTypes/UCSC/versions/hg38/token=ADMIN_TOKEN_ID&
@@ -0,0 +1 @@
+{"downloadProgress":100.0,"geneMapping":[],"idObject":1563,"localUrl":"../minerva-big//5280/hg38.2bit","organism":{"annotatorClassName":"","descriptionByType":"","descriptionByTypeRelation":"","id":927074,"link":"http://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?mode=Info&id=9606","resource":"9606","type":"TAXONOMY"},"sourceUrl":"ftp://hgdownload.cse.ucsc.edu/goldenPath/hg38/bigZips/hg38.2bit","type":"UCSC","version":"hg38"}
\ No newline at end of file
diff --git a/frontend-js/testFiles/apiCalls/genomics/taxonomies/9606/genomeTypes/UCSC/versions/token=ADMIN_TOKEN_ID& b/frontend-js/testFiles/apiCalls/genomics/taxonomies/9606/genomeTypes/UCSC/versions/token=ADMIN_TOKEN_ID&
new file mode 100644
index 0000000000000000000000000000000000000000..f885fbf47775e1a6cf8962609b34bb3a075acb1f
--- /dev/null
+++ b/frontend-js/testFiles/apiCalls/genomics/taxonomies/9606/genomeTypes/UCSC/versions/token=ADMIN_TOKEN_ID&
@@ -0,0 +1 @@
+[{"version":"hg38"},{"version":"hg24may2000"},{"version":"hg19"},{"version":"hg18"},{"version":"hg17"},{"version":"hg16"},{"version":"hg15june2000"},{"version":"hg13"},{"version":"hg12"},{"version":"hg11"},{"version":"hg10"},{"version":"10april2003"},{"version":"hg8"},{"version":"hg7"},{"version":"hg6"},{"version":"hg5"},{"version":"hg4"}]
\ No newline at end of file
diff --git a/frontend-js/testFiles/apiCalls/genomics/taxonomies/9606/genomeTypes/token=ADMIN_TOKEN_ID& b/frontend-js/testFiles/apiCalls/genomics/taxonomies/9606/genomeTypes/token=ADMIN_TOKEN_ID&
new file mode 100644
index 0000000000000000000000000000000000000000..239f1b00f1ba0895c5aaf49f1da4478b95881d7f
--- /dev/null
+++ b/frontend-js/testFiles/apiCalls/genomics/taxonomies/9606/genomeTypes/token=ADMIN_TOKEN_ID&
@@ -0,0 +1 @@
+[{"type":"UCSC"}]
\ No newline at end of file