diff --git a/composer.json b/composer.json
index 8cd023b4dd0c5c2ff3fe32c9a654fb316c619218..de35285fa029a4c541bfb6286c8680680d3f237e 100644
--- a/composer.json
+++ b/composer.json
@@ -150,7 +150,6 @@
     ],
     "test:install-assets": [
       "@test:clear",
-      "@test:install-theme-assets",
       "cd tests/Fixtures && npm install && npm run dev #"
     ],
         "test:install-theme-assets": [
diff --git a/package.json b/package.json
index 1383bd827ead88307233f1e39bc0abc3e25cfbe7..b9112cfc74c4c83a1bd27a9027bc525a3713b6e9 100644
--- a/package.json
+++ b/package.json
@@ -11,9 +11,11 @@
     "core-js": "^3.0.0"
   },
   "dependencies": {
+    "bazinga-translator": "^3.0.1",
     "blueimp-canvas-to-blob": "^3.27.0",
     "blueimp-file-upload": "^10.30.1",
     "blueimp-load-image": "^5.13.0",
+    "blueimp-tmpl": "^3.17.0",
     "bootstrap-sass": "^3.4.1",
     "canvas-to-blob": "^1.0.0",
     "font-awesome": "^4.0",
diff --git a/src/Resources/assets/js/main.js b/src/Resources/assets/js/main.js
index 4a78b014b24d80e3be16cad3c2567e2824fed445..20fc143ffa5d99ded12e49efd2c2941fc32a88c4 100644
--- a/src/Resources/assets/js/main.js
+++ b/src/Resources/assets/js/main.js
@@ -1,15 +1,20 @@
-import * as jQuery from 'jquery';
-global.$ = window.$ = jQuery;
+import $ from 'jquery';
+window.jQuery = $;
+window.$ = $;
+
+import 'blueimp-file-upload/js/vendor/jquery.ui.widget';
+import 'blueimp-file-upload/js/jquery.iframe-transport';
+import 'blueimp-file-upload/js/jquery.fileupload';
 
-//css to convert to less
 import 'blueimp-file-upload/css/jquery.fileupload.css';
 import 'blueimp-file-upload/css/jquery.fileupload-ui.css';
 import '../sass/file_upload.scss';
 
-import 'blueimp-file-upload/js/jquery.fileupload';
 import 'blueimp-file-upload/js/jquery.fileupload-process';
 import 'blueimp-file-upload/js/jquery.fileupload-validate';
-import 'blueimp-file-upload/js/jquery.fileupload-ui';
+//import 'blueimp-file-upload/js/jquery.fileupload-ui';
 import './widget/file_upload.js';
 
+import 'bazinga-translator/js/translator';
+import 'blueimp-tmpl/js/tmpl';
 
diff --git a/tests/Fixtures/assets/fileupload_demo.css b/tests/Fixtures/assets/fileupload_demo.css
index 38c567030498941ec6334468984e2f13ffb39756..92906028f981a198437647bf19eb09f25c389195 100644
--- a/tests/Fixtures/assets/fileupload_demo.css
+++ b/tests/Fixtures/assets/fileupload_demo.css
@@ -1,16 +1,22 @@
-        .file {
-   position: relative;
-   background: linear-gradient(to right, lightblue 50%, transparent 50%);
-   background-size: 200% 100%;
-   background-position: right bottom;
-   transition:all 1s ease;
+.file {
+    position: relative;
+    background: linear-gradient(to right, lightblue 50%, transparent 50%);
+    background-size: 200% 100%;
+    background-position: right bottom;
+    transition:all 1s ease;
 }
- .file.done {
-   background: lightgreen;
+.file.done {
+    background: lightgreen;
 }
- .file a {
-   display: block;
-   position: relative;
-   padding: 5px;
-   color: black;
+.file a {
+    display: block;
+    position: relative;
+    padding: 5px;
+    color: black;
 }
+
+
+.bar {
+    height: 18px;
+    background: green;
+}
\ No newline at end of file
diff --git a/tests/Fixtures/assets/fileupload_demo.js b/tests/Fixtures/assets/fileupload_demo.js
index 55e73a7e2982d61045b865fc014be02191ce2087..83f5005d4e39d72f44d3217544ca9cdeb5f253d7 100644
--- a/tests/Fixtures/assets/fileupload_demo.js
+++ b/tests/Fixtures/assets/fileupload_demo.js
@@ -1,19 +1,19 @@
-       $("#fileupload").fileupload({
-            dataType: "json",
-            add: function(e, data) {
-                data.context = $('<p class="file">')
-                    .append($('<a target="_blank">').text(data.files[0].name))
-                    .appendTo(document.body);
-                data.submit();
-            },
-            progress: function(e, data) {
-                var progress = parseInt((data.loaded / data.total) * 100, 10);
-                data.context.css("background-position-x", 100 - progress + "%");
-            },
-            done: function(e, data) {
-                data.context
-                    .addClass("done")
-                    .find("a")
-                    .prop("href", data.result.files[0].url);
-            }
-        });
+ $("#fileupload").fileupload({
+        dataType: "json",
+        add: function(e, data) {
+            data.context = $('<p class="file">')
+                .append($('<a target="_blank">').text(data.files[0].name))
+                .appendTo(document.body);
+            data.submit();
+        },
+        progress: function(e, data) {
+            var progress = parseInt((data.loaded / data.total) * 100, 10);
+            data.context.css("background-position-x", 100 - progress + "%");
+        },
+        done: function(e, data) {
+            data.context
+                .addClass("done")
+                .find("a")
+                .prop("href", data.result.files[0].url);
+        }
+    });
\ No newline at end of file
diff --git a/tests/Fixtures/assets/main.js b/tests/Fixtures/assets/main.js
index 856a7560c0f28a35c7871a642be81f7b5caebced..2e1b0c0181bafb9d0cfe9f133913e44a90c02909 100644
--- a/tests/Fixtures/assets/main.js
+++ b/tests/Fixtures/assets/main.js
@@ -1,2 +1,6 @@
 import '@irstea/theme-bundle';
 import '@irstea/fileupload-bundle';
+
+import './fileupload_demo.js';
+import './fileupload_demo.css';
+
diff --git a/tests/Fixtures/config/services.yaml b/tests/Fixtures/config/services.yaml
index cb0540d31e6ce876a5b377af904f213e73fb54cd..6425bb7417e922f70df6d328965ebc9040674f10 100644
--- a/tests/Fixtures/config/services.yaml
+++ b/tests/Fixtures/config/services.yaml
@@ -165,9 +165,8 @@ doctrine:
         driver: pdo_sqlite
         path: '%kernel.project_dir%/data/database_test.sqlite.db'
         charset: UTF8
-    orm: 
+    orm:
         auto_generate_proxy_classes: true
-        naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
         auto_mapping: true
 webpack_encore:
-  output_path: '%kernel.project_dir%/public/build'
\ No newline at end of file
+  output_path: '%kernel.project_dir%/public/build'
diff --git a/tests/Fixtures/public/js/fileupload_demo.js b/tests/Fixtures/public/js/fileupload_demo.js
new file mode 100644
index 0000000000000000000000000000000000000000..83f5005d4e39d72f44d3217544ca9cdeb5f253d7
--- /dev/null
+++ b/tests/Fixtures/public/js/fileupload_demo.js
@@ -0,0 +1,19 @@
+ $("#fileupload").fileupload({
+        dataType: "json",
+        add: function(e, data) {
+            data.context = $('<p class="file">')
+                .append($('<a target="_blank">').text(data.files[0].name))
+                .appendTo(document.body);
+            data.submit();
+        },
+        progress: function(e, data) {
+            var progress = parseInt((data.loaded / data.total) * 100, 10);
+            data.context.css("background-position-x", 100 - progress + "%");
+        },
+        done: function(e, data) {
+            data.context
+                .addClass("done")
+                .find("a")
+                .prop("href", data.result.files[0].url);
+        }
+    });
\ No newline at end of file
diff --git a/tests/Fixtures/templates/base.html.twig b/tests/Fixtures/templates/base.html.twig
index 0a851d28dbf3b5ffb62fc09f8ee68afcdf646e38..7255f2beee8aae271f7244d4fa2c32cf75087be9 100644
--- a/tests/Fixtures/templates/base.html.twig
+++ b/tests/Fixtures/templates/base.html.twig
@@ -1,17 +1,22 @@
-{% extends '@IrsteaTheme/layout.html.twig' %}
+{% block content -%}
+<input id="fileupload" type="file" name="files[]" data-url="server/php/" multiple>
+
+
+    <div id="progress">
+        <div class="bar" style="width: 0%;"></div>
+    </div>
 
-{% block titrePage %}
-    {{ parent() }}
-    Show case: {{ type | capitalize }}
 {% endblock %}
 
+
 {% block stylesheets %}
-    {{ parent() }}
-    {{ encore_entry_link_tags('main') }}
+  {{ encore_entry_link_tags('main') }}
 {% endblock %}
 
+
 {%- block javascripts %}
-    {{ parent() }}
     {{ encore_entry_script_tags('main') }}
 {% endblock %}
 
+
+
diff --git a/tests/Fixtures/templates/base.html_webpack.twig b/tests/Fixtures/templates/base.html_webpack.twig
new file mode 100644
index 0000000000000000000000000000000000000000..f991c0157f25563ddfa3e37a992467e2f3344a33
--- /dev/null
+++ b/tests/Fixtures/templates/base.html_webpack.twig
@@ -0,0 +1,16 @@
+{% extends '@IrsteaTheme/layout.html.twig' %}
+
+{% block titrePage %}
+    {{ parent() }}
+    Show case: {{ type | capitalize }}
+{% endblock %}
+
+{% block stylesheets %}
+    {{ parent() }}
+    {{ encore_entry_link_tags('main') }}
+{% endblock %}
+
+{%- block javascripts %}
+    {{ parent() }}
+    {{ encore_entry_script_tags('main') }}
+{% endblock %}
\ No newline at end of file
diff --git a/tests/Fixtures/templates/index.html.twig b/tests/Fixtures/templates/index.html.twig
index d5d79f5d75d15dd8ca59e4b696a818b20f33558d..b30d7c9d0c996a65849947ed8cc949097544573d 100644
--- a/tests/Fixtures/templates/index.html.twig
+++ b/tests/Fixtures/templates/index.html.twig
@@ -1,14 +1,2 @@
 {% extends '/base.html.twig' %}
-{% block content -%}
-    {{ form_start(form) }}
-    <div class="tab-content">
-        <div class="row">
-            <div class="col-md-12">
-                <br/><br/>
-                {{ form_rest(form) }}
-            </div>
-        </div>
-    </div>
-</div>
-{{ form_end(form) }}
-{% endblock %}
+