diff --git a/app/assets/javascripts/import/bitbucket_server/import_from_bitbucket_server_app.vue b/app/assets/javascripts/import/bitbucket_server/import_from_bitbucket_server_app.vue
new file mode 100644
index 0000000000000000000000000000000000000000..ae37256e619162dfee5b09904cd56497c8264fb4
--- /dev/null
+++ b/app/assets/javascripts/import/bitbucket_server/import_from_bitbucket_server_app.vue
@@ -0,0 +1,147 @@
+
+
+
+
+
diff --git a/app/assets/javascripts/import/bitbucket_server/index.js b/app/assets/javascripts/import/bitbucket_server/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..e13a2dfa4201c1ffbf5ecac480f7bb1236246b76
--- /dev/null
+++ b/app/assets/javascripts/import/bitbucket_server/index.js
@@ -0,0 +1,22 @@
+import Vue from 'vue';
+import importFromBitbucketServerApp from './import_from_bitbucket_server_app.vue';
+
+export function initBitbucketServerImportProjectForm() {
+ const el = document.getElementById('js-vue-import-bitbucket-server-project-root');
+
+ if (!el) {
+ return null;
+ }
+
+ const { backButtonPath, formPath } = el.dataset;
+
+ const props = { backButtonPath, formPath };
+
+ return new Vue({
+ el,
+ name: 'ImportFromBitbucketServerRoot',
+ render(h) {
+ return h(importFromBitbucketServerApp, { props });
+ },
+ });
+}
diff --git a/app/assets/javascripts/import/gitlab_project/import_from_gitlab_export_app.vue b/app/assets/javascripts/import/gitlab_project/import_from_gitlab_export_app.vue
index 4c261a59377a5a8a68b22dd933e1ae6c273f84e9..4eddd30880bc6f962322a9c667ca9159270f096f 100644
--- a/app/assets/javascripts/import/gitlab_project/import_from_gitlab_export_app.vue
+++ b/app/assets/javascripts/import/gitlab_project/import_from_gitlab_export_app.vue
@@ -1,6 +1,7 @@