diff --git a/app/components/AppFooter.vue b/app/components/AppFooter.vue
index c763c96..2a8a727 100644
--- a/app/components/AppFooter.vue
+++ b/app/components/AppFooter.vue
@@ -1,24 +1,67 @@
-
-
-
- {{ footer.credits }}
-
+
+
+
+ Copyright © 闽ICP备2023022186号-2
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
+
diff --git a/app/components/ScrollToTop.vue b/app/components/ScrollToTop.vue
new file mode 100644
index 0000000..986f40d
--- /dev/null
+++ b/app/components/ScrollToTop.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
+
+ {{ text }}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/components/landing/CaseFacts.vue b/app/components/landing/CaseFacts.vue
new file mode 100644
index 0000000..fea0ddd
--- /dev/null
+++ b/app/components/landing/CaseFacts.vue
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/components/landing/D3_INTELLIGENT_APIARY.vue b/app/components/landing/D3_INTELLIGENT_APIARY.vue
index e108cdc..423fdb4 100644
--- a/app/components/landing/D3_INTELLIGENT_APIARY.vue
+++ b/app/components/landing/D3_INTELLIGENT_APIARY.vue
@@ -3,9 +3,14 @@
-
-
+
+
+

+
+
diff --git a/app/layouts/default.vue b/app/layouts/default.vue
index f6376f6..1385871 100644
--- a/app/layouts/default.vue
+++ b/app/layouts/default.vue
@@ -1,8 +1,8 @@
diff --git a/app/pages/index/index.vue b/app/pages/index/index.vue
index a9a309d..d194e9b 100644
--- a/app/pages/index/index.vue
+++ b/app/pages/index/index.vue
@@ -9,6 +9,13 @@
+
+
+
+
+
diff --git a/package.json b/package.json
index 46ef320..11784a4 100644
--- a/package.json
+++ b/package.json
@@ -13,6 +13,7 @@
"@nuxt/eslint": "1.9.0",
"@nuxt/image": "1.11.0",
"@nuxt/ui": "4.0.1",
+ "@vueuse/core": "^14.0.0",
"eslint": "^9.38.0",
"nuxt": "^4.1.3",
"typescript": "^5.9.3",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index d611b41..7f0bd44 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -17,6 +17,9 @@ importers:
'@nuxt/ui':
specifier: 4.0.1
version: 4.0.1(@babel/parser@7.28.4)(change-case@5.4.4)(db0@0.3.4)(embla-carousel@8.6.0)(ioredis@5.8.1)(magicast@0.3.5)(typescript@5.9.3)(vite@7.1.11(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(yaml@2.8.1))(vue-router@4.6.3(vue@3.5.22(typescript@5.9.3)))(vue@3.5.22(typescript@5.9.3))(zod@4.1.12)
+ '@vueuse/core':
+ specifier: ^14.0.0
+ version: 14.0.0(vue@3.5.22(typescript@5.9.3))
eslint:
specifier: ^9.38.0
version: 9.38.0(jiti@2.6.1)
@@ -1696,6 +1699,11 @@ packages:
peerDependencies:
vue: ^3.5.0
+ '@vueuse/core@14.0.0':
+ resolution: {integrity: sha512-d6tKRWkZE8IQElX2aHBxXOMD478fHIYV+Dzm2y9Ag122ICBpNKtGICiXKOhWU3L1kKdttDD9dCMS4bGP3jhCTQ==}
+ peerDependencies:
+ vue: ^3.5.0
+
'@vueuse/integrations@13.9.0':
resolution: {integrity: sha512-SDobKBbPIOe0cVL7QxMzGkuUGHvWTdihi9zOrrWaWUgFKe15cwEcwfWmgrcNzjT6kHnNmWuTajPHoIzUjYNYYQ==}
peerDependencies:
@@ -1747,6 +1755,9 @@ packages:
'@vueuse/metadata@13.9.0':
resolution: {integrity: sha512-1AFRvuiGphfF7yWixZa0KwjYH8ulyjDCC0aFgrGRz8+P4kvDFSdXLVfTk5xAN9wEuD1J6z4/myMoYbnHoX07zg==}
+ '@vueuse/metadata@14.0.0':
+ resolution: {integrity: sha512-6yoGqbJcMldVCevkFiHDBTB1V5Hq+G/haPlGIuaFZHpXC0HADB0EN1ryQAAceiW+ryS3niUwvdFbGiqHqBrfVA==}
+
'@vueuse/shared@10.11.1':
resolution: {integrity: sha512-LHpC8711VFZlDaYUXEBbFBCQ7GS3dVU9mjOhhMhXP6txTV4EhYQg/KGnQuvt/sPAtoUKq7VVUnL6mVtFoL42sA==}
@@ -1758,6 +1769,11 @@ packages:
peerDependencies:
vue: ^3.5.0
+ '@vueuse/shared@14.0.0':
+ resolution: {integrity: sha512-mTCA0uczBgurRlwVaQHfG0Ja7UdGe4g9mwffiJmvLiTtp1G4AQyIjej6si/k8c8pUwTfVpNufck+23gXptPAkw==}
+ peerDependencies:
+ vue: ^3.5.0
+
abbrev@3.0.1:
resolution: {integrity: sha512-AO2ac6pjRB3SJmGJo+v5/aK6Omggp6fsLrs6wN9bd35ulu4cCwaAU9+7ZhXjeqHVkaHThLuzH0nZr0YpCDhygg==}
engines: {node: ^18.17.0 || >=20.5.0}
@@ -6686,6 +6702,13 @@ snapshots:
'@vueuse/shared': 13.9.0(vue@3.5.22(typescript@5.9.3))
vue: 3.5.22(typescript@5.9.3)
+ '@vueuse/core@14.0.0(vue@3.5.22(typescript@5.9.3))':
+ dependencies:
+ '@types/web-bluetooth': 0.0.21
+ '@vueuse/metadata': 14.0.0
+ '@vueuse/shared': 14.0.0(vue@3.5.22(typescript@5.9.3))
+ vue: 3.5.22(typescript@5.9.3)
+
'@vueuse/integrations@13.9.0(change-case@5.4.4)(fuse.js@7.1.0)(vue@3.5.22(typescript@5.9.3))':
dependencies:
'@vueuse/core': 13.9.0(vue@3.5.22(typescript@5.9.3))
@@ -6701,6 +6724,8 @@ snapshots:
'@vueuse/metadata@13.9.0': {}
+ '@vueuse/metadata@14.0.0': {}
+
'@vueuse/shared@10.11.1(vue@3.5.22(typescript@5.9.3))':
dependencies:
vue-demi: 0.14.10(vue@3.5.22(typescript@5.9.3))
@@ -6718,6 +6743,10 @@ snapshots:
dependencies:
vue: 3.5.22(typescript@5.9.3)
+ '@vueuse/shared@14.0.0(vue@3.5.22(typescript@5.9.3))':
+ dependencies:
+ vue: 3.5.22(typescript@5.9.3)
+
abbrev@3.0.1: {}
abort-controller@3.0.0:
diff --git a/public/img/index/3d_bg.png b/public/img/index/3d_bg.png
new file mode 100644
index 0000000..735e4c0
Binary files /dev/null and b/public/img/index/3d_bg.png differ
diff --git a/public/img/index/c1.png b/public/img/index/c1.png
new file mode 100644
index 0000000..4d78a35
Binary files /dev/null and b/public/img/index/c1.png differ
diff --git a/public/img/index/c2.png b/public/img/index/c2.png
new file mode 100644
index 0000000..a5013f5
Binary files /dev/null and b/public/img/index/c2.png differ
diff --git a/public/img/index/c3.png b/public/img/index/c3.png
new file mode 100644
index 0000000..e4bb0af
Binary files /dev/null and b/public/img/index/c3.png differ
diff --git a/public/img/index/c4.png b/public/img/index/c4.png
new file mode 100644
index 0000000..02eec2a
Binary files /dev/null and b/public/img/index/c4.png differ
diff --git a/public/img/index/footer_bg.png b/public/img/index/footer_bg.png
new file mode 100644
index 0000000..f962992
Binary files /dev/null and b/public/img/index/footer_bg.png differ