diff --git a/frontend-js/src/main/js/gui/leftPanel/LeftPanel.js b/frontend-js/src/main/js/gui/leftPanel/LeftPanel.js
index 8adacc0cacb7502fa21a4f6dc00bbe144ab815bd..59f3b15b1b198eaed14c2adf562ce2714c1c26ba 100644
--- a/frontend-js/src/main/js/gui/leftPanel/LeftPanel.js
+++ b/frontend-js/src/main/js/gui/leftPanel/LeftPanel.js
@@ -185,4 +185,10 @@ LeftPanel.prototype.getFooter = function() {
   return this._footer;
 };
 
+LeftPanel.prototype.destroy = function() {
+  var promises = [];
+  promises.push(this.getFooter().destroy());
+  return Promise.all(promises);
+};
+
 module.exports = LeftPanel;
diff --git a/frontend-js/src/main/js/minerva.js b/frontend-js/src/main/js/minerva.js
index b1eccb5889e8dd2e66a45b43456673825a8aa91b..82d48b8bbe8a15ce75e3f981d0db4ae2cefc21a2 100644
--- a/frontend-js/src/main/js/minerva.js
+++ b/frontend-js/src/main/js/minerva.js
@@ -22,6 +22,9 @@ var Promise = require("bluebird");
 
 var logger = require('./logger');
 
+var customMap, leftPanel, topMenu, legend, mapContextMenu, selectionContextMenu;
+
+
 function processUrlGetParams(params) {
   var project = params.getProject();
   var sessionData = ServerConnector.getSessionData(project);
@@ -184,6 +187,11 @@ function createResult(customMap) {
     getProject : function() {
       return customMap.getProject();
     },
+    destroy : function() {
+      return leftPanel.destroy().then(function() {
+        customMap.destroy();
+      });
+    },
   };
 }
 
@@ -244,10 +252,6 @@ function modifyParamsForTouchInterface(params) {
 
 function create(params) {
   params = modifyParamsForTouchInterface(params);
-  var customMap;
-  var leftPanel;
-  var topMenu;
-  var legend, mapContextMenu, selectionContextMenu;
   if (!(params instanceof CustomMapOptions)) {
     params = new CustomMapOptions(params);
   }
diff --git a/frontend-js/src/test/js/minerva-test.js b/frontend-js/src/test/js/minerva-test.js
index 4840d61cef21f0f79dadf6fe4c20e5d30014d6a2..0e11e74f445d110f40c6975c92473c0c8679e1d0 100644
--- a/frontend-js/src/test/js/minerva-test.js
+++ b/frontend-js/src/test/js/minerva-test.js
@@ -230,9 +230,14 @@ describe('minerva global', function() {
       projectId : "sample",
       element : testDiv
     };
-    logger.debug(options);
+    var globalResult;
     return minerva.create(options).then(function(result) {
+      globalResult = result;
       assert.ok(result);
+    }).then(function() {
+      globalResult.destroy()
+    }, function() {
+      globalResult.destroy()
     });
   });