diff --git a/app/templates/corpora/analyse_corpus.html.j2 b/app/templates/corpora/analyse_corpus.html.j2
index a5a303cb0794f6c89888b50d30050f056493e8ad..abe800ebbd89e0f65a11856351d226511a0163e5 100644
--- a/app/templates/corpora/analyse_corpus.html.j2
+++ b/app/templates/corpora/analyse_corpus.html.j2
@@ -115,14 +115,50 @@
   socket.on('init_corpus_analysis', function(msg) {
     if (msg === 'Ready') {loadingModal.close();}
   });
+  function decodeResults(resultsByteArray) {
+    console.log(resultsByteArray);
+    var decompressedData = pako.inflate(resultsByteArray); // decompresses the recieved ArrayBuffer holding the compressed Byte data
+    console.log(decompressedData);
+    utf8decoder = new TextDecoder(); // default is utf-8
+    var decodedStrData = utf8decoder.decode(decompressedData); // decodes the decompressed Uint8Array as an utf-8 string
+    console.log(decodedStrData);
+    return decodedStrData
+  }
+  function getResultInfos(matchObject) {
+    for (var key in matchObject) {
+        var token = matchObject[key];
+        for (var key in token) {
+          infos += token[key]['word'] + ' ';
+        }
+        var infos = infos;
+    }
+    return infos
+  }
   socket.on('query', function(results) {
-    queryResultsElement.innerHTML = '';
-    console.log(results)
-    var decoder = new TextDecoder().decode(results)
-    console.log(results)
-    for (let key in results) {
-      console.log(results[key]);
-      queryResultsElement.innerHTML += '<p>' + results[key]['match_cpos_list'] + '</p>';
+    console.log(results);
+    var decodedJSONStr = decodeResults(results);
+    var results = JSON.parse(decodedJSONStr);
+    if (results === null){
+      M.toast({html: 'Query has no results!'});
+    }
+    else {
+      console.log(results);
+      html_txt = '<table class="highlight"> <thead><tr><th>Left context</th><th>Match</th><th>Right Context</th></tr></thead>';
+      for (var key in results) {
+        var hit = results[key];
+        var left_context = hit['context_before_cpos_list']
+        var match = hit['match_cpos_list']
+        var right_context = hit['context_after_cpos_list']
+        var l_text = getResultInfos(left_context)
+        var m_text = getResultInfos(match)
+        var r_text = getResultInfos(right_context)
+        html_txt += '<tr><td>' + l_text + '</td><td>' + m_text + '</td><td>' + r_text + '</td></tr>';
+        l_text = '';
+        m_text = '';
+      }
+      html_txt += '</table>';
+      console.log(html_txt);
+      queryResultsElement.innerHTML = html_txt;
     }
   });
 </script>