diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/index.html b/dmnverifierfrontend/src/main/resources/META-INF/resources/index.html
index 1f17fa29f2f82c43bf2231cd731746d0793530f6..7cef176080fce05a58161f45e7bca10b3717ed47 100644
--- a/dmnverifierfrontend/src/main/resources/META-INF/resources/index.html
+++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/index.html
@@ -19,6 +19,7 @@
 </head>
 <body>
 <input id="dmn-file-upload" type="file">
+<button id="dmn-file-download">Download</button>
 <div id="content-dmn">
   <div class="editor-parent">
     <div class="editor-container"></div>
@@ -33,7 +34,8 @@
 <!-- load dmn modeler -->
 <script src="https://unpkg.com/dmn-js@7.0.1/dist/dmn-modeler.development.js"></script>
 
-<script src="js/upload.js" type="text/javascript"></script>
+<script src="js/dmnUpload.js" type="text/javascript"></script>
+<script src="js/dmnDownload.js" type="text/javascript"></script>
 <script src="js/dmnViewer.js" type="text/javascript"></script>
 <script src="js/dmnVerifier.js" type="text/javascript"></script>
 </body>
diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnDownload.js b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnDownload.js
new file mode 100644
index 0000000000000000000000000000000000000000..147407580e4d32379b0ecaad2009b5235711fbb9
--- /dev/null
+++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnDownload.js
@@ -0,0 +1,14 @@
+$('#dmn-file-download').on('click', function () {
+  exportDiagram();
+});
+
+function download(filename, dmnXml) {
+  let el = document.createElement('a');
+  el.setAttribute('href',
+      'data:text/xml;charset=utf-8,' + encodeURIComponent(dmnXml));
+  el.setAttribute('download', filename);
+  el.style.display = 'none';
+  document.body.appendChild(el);
+  el.click();
+  document.body.removeChild(el);
+}
diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/upload.js b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnUpload.js
similarity index 100%
rename from dmnverifierfrontend/src/main/resources/META-INF/resources/js/upload.js
rename to dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnUpload.js
diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnViewer.js b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnViewer.js
index 71e766c42110353ac8f5ca166e9eb60cfafceecc..67a21130caa17013e7a15646d018f76522c779b7 100644
--- a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnViewer.js
+++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnViewer.js
@@ -52,7 +52,7 @@ function exportDiagram() {
     } else {
       console.log('saving dmn..');
     }
-    // TODO, download
+    download("dmnTable.dmn", xml);
   });
 }