diff --git a/CHANGELOG.md b/CHANGELOG.md
index 619d8bb1d1de2825edc9b0c402fd8ea198dc1e8a..2aac295528364caf88860935469d7d719bef8abe 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,8 @@
 
+[1.2] 27/11/2020
+* Image supports in briefing
+* Set theia-full instead of theia-java (https://git.e-biz.fr/deadlock-public/deadlock-theia/-/issues/2)
+
 [1.1] 27/11/2020
 * preStop hook ok
 * GitLens integration
diff --git a/Dockerfile b/Dockerfile
index 2f4643b962ab9dba868cb0e23d5696b60511434d..28671db2a9c107d923e81fc80b885bcd59ef1ec4 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,4 +1,4 @@
-FROM theiaide/theia-java:1.4.0
+FROM theiaide/theia-full:1.7.0
 
 USER root
 
@@ -19,7 +19,7 @@ COPY recorder-out/dist/main.js deadlock/recorder.js
 COPY recorder-out/dist/preStop.js deadlock/preStop.js
 COPY .gitignore_recorder deadlock/.gitignore
 
-RUN chmod 500 deadlock/ -R
+RUN chmod 504 deadlock/ -R
 RUN chmod 500 start.sh
 
 ENTRYPOINT ["bash", "start.sh"]
diff --git a/plugins/deadlock-extension/README.md b/plugins/deadlock-extension/README.md
index 9a5ab4bce2ddd3b97bc58549f348bea137ff2fd5..01fc6452bd81c2d5c43bbcdb2ffd01b0291c5ab6 100644
--- a/plugins/deadlock-extension/README.md
+++ b/plugins/deadlock-extension/README.md
@@ -4,3 +4,5 @@ Vscode extension to show a panel with :
 * adresses availables for the current challenge pulled from `/home/config/user-challenge.json`
 * challenge instruction pulled from the `README.md`
 
+## Run first the `setup-dev-env.sh` then you can start your plugin with `VsCode Run`.
+
diff --git a/plugins/deadlock-extension/dev/config/user-challenge.json b/plugins/deadlock-extension/dev/config/user-challenge.json
new file mode 100644
index 0000000000000000000000000000000000000000..76564a32e157f6d15ef0a19891e0af0ae8ea74a9
--- /dev/null
+++ b/plugins/deadlock-extension/dev/config/user-challenge.json
@@ -0,0 +1,13 @@
+{
+  "paths": {
+    "9090": "HXW3fnKwUULrfKS1-cdb",
+    "3000": "HXW3fnKwUULrfKS1-web",
+    "8080": "HXW3fnKwUULrfKS1-angular"
+  },
+  "host": "persist.dev.deadlock.io",
+  "token": "e75da487-9576-4427-be2d-8da4059adc7d",
+  "giteaHost": "deadlock.minikube",
+  "giteaSshPort": 32000,
+  "username": "toast",
+  "missionId": "code_persist_cdb_crud"
+}
diff --git a/plugins/deadlock-extension/dev/docs/briefing.md b/plugins/deadlock-extension/dev/docs/briefing.md
new file mode 100644
index 0000000000000000000000000000000000000000..dc0b11a276a9f166fc9817a7b164f147d9666776
--- /dev/null
+++ b/plugins/deadlock-extension/dev/docs/briefing.md
@@ -0,0 +1,5 @@
+# Briefing dev sample
+
+HELL0 WORLD!
+
+![toast](image:toast.jpg)
diff --git a/plugins/deadlock-extension/dev/docs/toast.jpg b/plugins/deadlock-extension/dev/docs/toast.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..77bef7473d1159a789053366aa960d0ebbfa7e44
Binary files /dev/null and b/plugins/deadlock-extension/dev/docs/toast.jpg differ
diff --git a/plugins/deadlock-extension/setup-dev-env.sh b/plugins/deadlock-extension/setup-dev-env.sh
index 66a4ee53c991fe38b81de07812ea8f21f0572533..fcd5d04ba4016f9026efbb77389456e196f77ee2 100755
--- a/plugins/deadlock-extension/setup-dev-env.sh
+++ b/plugins/deadlock-extension/setup-dev-env.sh
@@ -5,25 +5,5 @@
 
 mkdir -p /home/$USER/deadlock-extension/project
 mkdir -p /home/$USER/deadlock-extension/project-theia
-mkdir -p /home/$USER/deadlock-extension/config
-mkdir -p /home/$USER/deadlock-extension/docs
 
-echo '
-# Briefing dev sample
-HELL0 WORLD!
-' > /home/$USER/deadlock-extension/docs/briefing.md
-echo '
-{
-  "paths": {
-   "9090":"HXW3fnKwUULrfKS1-cdb",
-   "3000":"HXW3fnKwUULrfKS1-web",
-   "8080":"HXW3fnKwUULrfKS1-angular"
-   },
-  "host":"persist.dev.deadlock.io",
-  "token":"e75da487-9576-4427-be2d-8da4059adc7d",
-  "giteaHost":"deadlock.minikube",
-  "giteaSshPort":32000,
-  "username":"toast",
-  "missionId":"code_persist_cdb_crud"
-  }
-' > /home/$USER/deadlock-extension/config/user-challenge.json
\ No newline at end of file
+cp -R ./dev/* /home/$USER/deadlock-extension
diff --git a/plugins/deadlock-extension/src/extension.ts b/plugins/deadlock-extension/src/extension.ts
index 8b1891cb7df38663b0ac8098bbabb4517f2d372a..b9849fa850ea92208e3c73c3b4328d049f8bebdc 100644
--- a/plugins/deadlock-extension/src/extension.ts
+++ b/plugins/deadlock-extension/src/extension.ts
@@ -12,7 +12,11 @@ export const userConfig = new UserConfigTheia();
 
 export async function activate(context: vscode.ExtensionContext) {
 
-  await userConfig.init();
+  try {
+    await userConfig.init();
+  } catch (e) {
+    console.error("Cannot init userConfig");
+  }
 
   initViews();
 
diff --git a/plugins/deadlock-extension/src/view/briefingView.ts b/plugins/deadlock-extension/src/view/briefingView.ts
index 77fc224ac373a5f14938bc2fbf70b1a313980699..755c8901f696b6bf5132a2cea469bc4db088cbfb 100644
--- a/plugins/deadlock-extension/src/view/briefingView.ts
+++ b/plugins/deadlock-extension/src/view/briefingView.ts
@@ -2,9 +2,10 @@ import View from "./view";
 
 import * as vscode from "vscode";
 
-import * as path from "path";
 // eslint-disable-next-line @typescript-eslint/no-var-requires
 const marked = require("marked");
+const fs = require("fs");
+import * as path from "path";
 
 import { DOCS_PATH, BRIEFING_FILE_NAME } from "../core/config";
 import { WebviewBase } from "./webviewBase";
@@ -25,6 +26,27 @@ export default class BriefingView extends WebviewBase {
     super(BRIEFING_ID, "Briefing", OPEN_BRIEFING_COMMAND);
   }
 
+  toBase64(file: string) {
+    const re = fs.readFileSync(path.join(DOCS_PATH, file), {
+      encoding: "base64",
+    });
+    console.log("re", re);
+    return re;
+  }
+
+  setupImages(text: string) {
+    const imageRegex = /\!\[(.*?)\]\(\b(image:)(.*?\))?/g
+
+    return text.replace(imageRegex, (match, title, imagePrefix, img) => {
+      const fileName = img.replace(")", "");
+      const extension = fileName.split("\.");
+
+      return `![${title}](data:image/${
+        extension[extension.length - 1]
+      };base64,${this.toBase64(fileName)})`;
+    });
+  }
+
   load(): void {
     const intervalId = setInterval(() => {
       if (vscode.workspace && !this.loadingBriefing) {
@@ -37,7 +59,12 @@ export default class BriefingView extends WebviewBase {
           )
           .then(
             (document) => {
-              this.briefingContent = document.getText();
+              try {
+                this.briefingContent = this.setupImages(document.getText());
+              } catch (e) {
+                console.error(e);
+                this.briefingContent = "Error while parsing your briefing."
+              }
               this.show();
             },
             (error) => {
@@ -93,7 +120,7 @@ export default class BriefingView extends WebviewBase {
       if (key !== "3000") {
         pathsLength++;
         const path = paths[key];
-        if (userConfig.getHost() === 'localhost') {
+        if (userConfig.getHost() === "localhost") {
           adresses += `<li>${key} binded on <a href="http://${userConfig.getHost()}:${path}">${path}</a></li>`;
         } else {
           adresses += `<li>${key} binded on <a href="https://${userConfig.getHost()}/${path}/">${path}</a></li>`;
diff --git a/server.js b/server.js
index 39e7d1718b44a61d65b4b16a87afc31b872d11e6..2b30d4bd734881380a8ea62fdefb9e3fe8f7348f 100644
--- a/server.js
+++ b/server.js
@@ -58,20 +58,21 @@ function start(port, host, argv) {
     });
 }
 
-
 module.exports = (port, host, argv) => Promise.resolve()
-    .then(function () { return Promise.resolve(require('@theia/process/lib/common/process-common-module')).then(load) })
-    .then(function () { return Promise.resolve(require('@theia/process/lib/node/process-backend-module')).then(load) })
     .then(function () { return Promise.resolve(require('@theia/filesystem/lib/node/filesystem-backend-module')).then(load) })
     .then(function () { return Promise.resolve(require('@theia/filesystem/lib/node/download/file-download-backend-module')).then(load) })
     .then(function () { return Promise.resolve(require('@theia/workspace/lib/node/workspace-backend-module')).then(load) })
-    .then(function () { return Promise.resolve(require('@theia/languages/lib/node/languages-backend-module')).then(load) })
-    .then(function () { return Promise.resolve(require('@theia/file-search/lib/node/file-search-backend-module')).then(load) })
-    .then(function () { return Promise.resolve(require('@theia/git/lib/node/git-backend-module')).then(load) })
-    .then(function () { return Promise.resolve(require('@theia/git/lib/node/env/git-env-module')).then(load) })
+    .then(function () { return Promise.resolve(require('@theia/process/lib/common/process-common-module')).then(load) })
+    .then(function () { return Promise.resolve(require('@theia/process/lib/node/process-backend-module')).then(load) })
     .then(function () { return Promise.resolve(require('@theia/terminal/lib/node/terminal-backend-module')).then(load) })
     .then(function () { return Promise.resolve(require('@theia/task/lib/node/task-backend-module')).then(load) })
     .then(function () { return Promise.resolve(require('@theia/debug/lib/node/debug-backend-module')).then(load) })
+    .then(function () { return Promise.resolve(require('@theia/cpp-debug/lib/node/cpp-debug-backend-module')).then(load) })
+    .then(function () { return Promise.resolve(require('@theia/file-search/lib/node/file-search-backend-module')).then(load) })
+    .then(function () { return Promise.resolve(require('@theia/git/lib/node/git-backend-module')).then(load) })
+    .then(function () { return Promise.resolve(require('@theia/git/lib/node/env/git-env-module')).then(load) })
+    .then(function () { return Promise.resolve(require('@theia/metrics/lib/node/metrics-backend-module')).then(load) })
+    .then(function () { return Promise.resolve(require('@theia/mini-browser/lib/node/mini-browser-backend-module')).then(load) })
     .then(function () { return Promise.resolve(require('@theia/search-in-workspace/lib/node/search-in-workspace-backend-module')).then(load) })
     .then(function () { return Promise.resolve(require('@theia/plugin-ext/lib/plugin-ext-backend-module')).then(load) })
     .then(function () { return Promise.resolve(require('@theia/plugin-ext-vscode/lib/node/plugin-vscode-backend-module')).then(load) })
@@ -82,4 +83,4 @@ module.exports = (port, host, argv) => Promise.resolve()
             console.error(reason);
         }
         throw reason;
-    });
\ No newline at end of file
+    });
diff --git a/start.sh b/start.sh
index 37d853aa2cf2043a02e1c0f9eb82906251010b3e..e6e2ad0d5e8f4adb17f3f3f14fc5ebd439be1cd5 100755
--- a/start.sh
+++ b/start.sh
@@ -9,4 +9,4 @@ cp /tmp/.ssh/* ~/.ssh/
 node deadlock/recorder.js &
 
 # starting theia as THEIA
-su theia --command "yarn theia start /home/project --hostname=0.0.0.0 --plugins=local-dir:/home/plugins"
\ No newline at end of file
+su theia --command "node /home/theia/src-gen/backend/main.js /home/project --hostname=0.0.0.0 --plugins=local-dir:/home/plugins"
\ No newline at end of file