diff --git a/package-lock.json b/package-lock.json
index aef7ef8..84928a8 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -58,7 +58,6 @@
"integrity": "sha512-2BCOP7TN8M+gVDj7/ht3hsaO/B/n5oDbiAyyvnRlNOs+u1o+JWNYTQrmpuNp1/Wq2gcFrI01JAW+paEKDMx/CA==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"@babel/code-frame": "^7.27.1",
"@babel/generator": "^7.28.3",
@@ -1336,7 +1335,6 @@
"integrity": "sha512-anNG/V/Efn/YZY4pRzbACnKxNKoBng2VTFydVu8RRs5hQjikP8CQfaeAV59VFSCzKNp90mXiVXW2QzV56rwMrg==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"undici-types": "~6.21.0"
}
@@ -1755,7 +1753,6 @@
}
],
"license": "MIT",
- "peer": true,
"dependencies": {
"baseline-browser-mapping": "^2.8.9",
"caniuse-lite": "^1.0.30001746",
@@ -2843,7 +2840,6 @@
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
"devOptional": true,
"license": "Apache-2.0",
- "peer": true,
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"
@@ -2926,7 +2922,6 @@
"integrity": "sha512-CmuvUBzVJ/e3HGxhg6cYk88NGgTnBoOo7ogtfJJ0fefUWAxN/WDSUa50o+oVBxuIhO8FoEZW0j2eW7sfjs5EtA==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"esbuild": "^0.25.0",
"fdir": "^6.5.0",
@@ -3153,7 +3148,6 @@
"resolved": "https://registry.npmjs.org/vue/-/vue-3.5.22.tgz",
"integrity": "sha512-toaZjQ3a/G/mYaLSbV+QsQhIdMo9x5rrqIpYRObsJ6T/J+RyCSFwN2LHNVH9v8uIcljDNa3QzPVdv3Y6b9hAJQ==",
"license": "MIT",
- "peer": true,
"dependencies": {
"@vue/compiler-dom": "3.5.22",
"@vue/compiler-sfc": "3.5.22",
diff --git a/src/App.vue b/src/App.vue
index 76fa883..c62f432 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,17 +1,194 @@
-
- You did it!
+
+
+
+
\ No newline at end of file
diff --git a/src/components/HeaderView.vue b/src/components/HeaderView.vue
new file mode 100644
index 0000000..36771e0
--- /dev/null
+++ b/src/components/HeaderView.vue
@@ -0,0 +1,79 @@
+
+
+
+
+
+
+
StarNet 综合管理平台
+
+
+
{{ username.charAt(0) }}
+
{{ username }}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/components/TabList.vue b/src/components/TabList.vue
new file mode 100644
index 0000000..d9e7973
--- /dev/null
+++ b/src/components/TabList.vue
@@ -0,0 +1,77 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/stores/user.ts b/src/stores/user.ts
new file mode 100644
index 0000000..59a94cf
--- /dev/null
+++ b/src/stores/user.ts
@@ -0,0 +1,14 @@
+import { defineStore } from "pinia";
+import { ref } from "vue";
+
+export const useUserStore = defineStore('user', () => {
+ const username = ref('用户名');
+ const imageUrl = ref('');
+ function setUsername(name: string) {
+ username.value = name;
+ }
+ function setImageUrl(url: string) {
+ imageUrl.value = url;
+ }
+ return { username, imageUrl, setUsername, setImageUrl };
+});
\ No newline at end of file
diff --git a/src/types/CardItems.ts b/src/types/CardItems.ts
new file mode 100644
index 0000000..7119fd5
--- /dev/null
+++ b/src/types/CardItems.ts
@@ -0,0 +1,9 @@
+export interface CardItem {
+ id: string;
+ title: string;
+ description: string;
+ icon: string;
+ network: string;
+ networkName: string;
+ visits: number;
+}
\ No newline at end of file
diff --git a/src/types/TabItems.ts b/src/types/TabItems.ts
new file mode 100644
index 0000000..9fd369c
--- /dev/null
+++ b/src/types/TabItems.ts
@@ -0,0 +1,5 @@
+export interface TabItem {
+ id: string;
+ name: string;
+ tag: string;
+}
\ No newline at end of file