diff --git a/CHANGELOG b/CHANGELOG
index 430d2a345d380a2ac38106412aaffd99d5e8139a..4b8b7d1773de0647ed26e41a9d2eb4fe2ad7374e 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -7,6 +7,8 @@ minerva (15.0.0~alpha.1) stable; urgency=medium
   * Small improvement: uploaded map is automatically cached (#983)
   * Small improvement: molart updated to version 1.5.0: Ability to show
     unobserved structure regions in the sequence view.
+  * Small improvement: list of genomes is automatically refreshed during genome
+    upload (#820)
   * Bug fix: structural states of proteins are imported properly from SBGNML PD
     (#995)
   * Bug fix: clear button icon, refresh comments button and show overview
diff --git a/frontend-js/package-lock.json b/frontend-js/package-lock.json
index 16c9668d51f2c97a5ee52bcbcdf1694600eb3d77..93eecbbc3851bf594b1fb2dd96e298b8704f53f5 100644
--- a/frontend-js/package-lock.json
+++ b/frontend-js/package-lock.json
@@ -3586,9 +3586,9 @@
       }
     },
     "molart": {
-      "version": "1.4.0",
-      "resolved": "https://registry.npmjs.org/molart/-/molart-1.4.0.tgz",
-      "integrity": "sha512-+HPcwFZTxa3BwBcyimgsg5pCSphy6hdidYUeQ8VcMOd8UhfdmdhZAsSQkF/E31jjlwnIuYTDqLAbKE8GsX5clA==",
+      "version": "1.5.0",
+      "resolved": "https://registry.npmjs.org/molart/-/molart-1.5.0.tgz",
+      "integrity": "sha512-3hxf1++izKhqVdc+X5NyGjOS9wu1PQd7+JpSeUJBIRKOO4fqmhUyYflQ2asymYwQv7GGxenFh2PQ24hmbOAXwQ==",
       "dev": true
     },
     "mold-source-map": {
diff --git a/frontend-js/src/main/js/gui/admin/GenomeAdminPanel.js b/frontend-js/src/main/js/gui/admin/GenomeAdminPanel.js
index b377358beae7b69ab52666dbfee732d4f220a0d0..e8bf33d5c132541938d37d4d68086c9a1ec95a9c 100644
--- a/frontend-js/src/main/js/gui/admin/GenomeAdminPanel.js
+++ b/frontend-js/src/main/js/gui/admin/GenomeAdminPanel.js
@@ -35,6 +35,8 @@ function GenomeAdminPanel(params) {
 GenomeAdminPanel.prototype = Object.create(AbstractAdminPanel.prototype);
 GenomeAdminPanel.prototype.constructor = GenomeAdminPanel;
 
+GenomeAdminPanel.AUTO_REFRESH_TIME = 5000;
+
 /**
  *
  * @private
@@ -202,6 +204,7 @@ GenomeAdminPanel.prototype.setReferenceGenomes = function (referenceGenomes) {
   var self = this;
 
   return self.getServerConnector().getLoggedUser().then(function (user) {
+    var requireUpdate = false;
 
     var dataTable = $("[name='genomeTable']", self.getElement()).DataTable();
     var data = [];
@@ -211,10 +214,24 @@ GenomeAdminPanel.prototype.setReferenceGenomes = function (referenceGenomes) {
       var genome = referenceGenomes[i];
       var rowData = self.genomeToTableRow(genome, user);
       data.push(rowData);
+      if (genome.getDownloadProgressStatus() !== "READY" &&
+        genome.getDownloadProgressStatus() !== "ERROR" &&
+        genome.getDownloadProgressStatus() !== "N/A") {
+        requireUpdate = true;
+      }
+
     }
     //it should be simplified, but I couldn't make it work
     dataTable.clear().rows.add(data).page(page).draw(false).page(page).draw(false);
-  })
+
+    if (requireUpdate) {
+      setTimeout(function () {
+        logger.debug("Genomes auto refresh");
+        return self.onRefreshClicked();
+      }, GenomeAdminPanel.AUTO_REFRESH_TIME);
+    }
+
+  });
 };
 
 /**