diff --git a/frontend/src/api/system/plugin.js b/frontend/src/api/system/plugin.js
new file mode 100644
index 0000000000..cc22401f55
--- /dev/null
+++ b/frontend/src/api/system/plugin.js
@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+const pathMap = {
+ queryPath: '/api/plugin/pluginGrid/'
+}
+export function pluginLists(page, size, data) {
+ return request({
+ url: pathMap.queryPath + page + '/' + size,
+ method: 'post',
+ data,
+ loading: true
+ })
+}
+
diff --git a/frontend/src/components/AsyncComponent/index.vue b/frontend/src/components/AsyncComponent/index.vue
new file mode 100644
index 0000000000..08eae71e02
--- /dev/null
+++ b/frontend/src/components/AsyncComponent/index.vue
@@ -0,0 +1,53 @@
+
+
+
+
+
diff --git a/frontend/src/views/system/plugin/index.vue b/frontend/src/views/system/plugin/index.vue
new file mode 100644
index 0000000000..90feda6ea2
--- /dev/null
+++ b/frontend/src/views/system/plugin/index.vue
@@ -0,0 +1,162 @@
+
+
+
+
+
+
+
+
+ {{ $t('plugin.local_install') }}
+ {{ $t('dataset.uploading') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ scope.row.installTime | timestampFormatDate }}
+
+
+
+
+
+
+
+
+
+
+