✨ Better product carsouel
This commit is contained in:
@@ -48,5 +48,11 @@ body {
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
font-family: Nunito Variable, sans-serif;
|
font-family: Nunito Variable, sans-serif;
|
||||||
|
|
||||||
|
scroll-behavior: smooth;
|
||||||
|
}
|
||||||
|
|
||||||
|
.n-layout-scroll-container {
|
||||||
|
scroll-behavior: smooth;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
@@ -8,18 +8,18 @@
|
|||||||
that interesting.
|
that interesting.
|
||||||
</p>
|
</p>
|
||||||
<n-space justify="center">
|
<n-space justify="center">
|
||||||
<n-button type="primary" size="large" round>Explore around</n-button>
|
<n-button type="primary" size="large" round tag="a" href="#products">Explore around</n-button>
|
||||||
<n-button type="default" size="large" round>About us</n-button>
|
<n-button type="default" size="large" round>About us</n-button>
|
||||||
</n-space>
|
</n-space>
|
||||||
</div>
|
</div>
|
||||||
<div id="about" class="pb-36">
|
<div id="products" class="pb-56">
|
||||||
<client-only>
|
<client-only>
|
||||||
<n-grid cols="1 m:2 l:2" responsive="screen" x-gap="32" y-gap="16">
|
<n-grid cols="1 m:2 l:2" responsive="screen" x-gap="32" y-gap="16">
|
||||||
<n-gi>
|
<n-gi>
|
||||||
<div class="flex items-center justify-center">
|
<div class="flex items-center justify-center">
|
||||||
<n-carousel
|
<n-carousel
|
||||||
show-arrow
|
show-arrow
|
||||||
draggable
|
autoplay
|
||||||
dot-type="line"
|
dot-type="line"
|
||||||
class="rounded-xl w-full max-h-[360px] aspect-video flex-shrink-1"
|
class="rounded-xl w-full max-h-[360px] aspect-video flex-shrink-1"
|
||||||
>
|
>
|
||||||
@@ -45,6 +45,14 @@
|
|||||||
"
|
"
|
||||||
class="absolute left-0 right-0 top-1/2 bottom-0"
|
class="absolute left-0 right-0 top-1/2 bottom-0"
|
||||||
/>
|
/>
|
||||||
|
<div class="absolute left-0 right-0 top-0 px-4 pt-4 flex justify-end gap-2.5">
|
||||||
|
<n-button v-if="product.repo" circle color="white" size="small" tag="a" :href="product.repo" target="_blank">
|
||||||
|
<n-icon><code-round /></n-icon>
|
||||||
|
</n-button>
|
||||||
|
<n-button v-if="product.url" circle color="white" size="small" tag="a" :href="product.url" target="_blank">
|
||||||
|
<n-icon><launch-round /></n-icon>
|
||||||
|
</n-button>
|
||||||
|
</div>
|
||||||
<div
|
<div
|
||||||
class="absolute bottom-0 px-6 py-8 w-full"
|
class="absolute bottom-0 px-6 py-8 w-full"
|
||||||
style="z-index: 2"
|
style="z-index: 2"
|
||||||
@@ -64,8 +72,14 @@
|
|||||||
class="flex justify-center text-right h-full py-8 px-4 flex flex-col"
|
class="flex justify-center text-right h-full py-8 px-4 flex flex-col"
|
||||||
>
|
>
|
||||||
<h2 class="text-3xl font-bold mb-3">Our products</h2>
|
<h2 class="text-3xl font-bold mb-3">Our products</h2>
|
||||||
<p class="text-lg mb-1">The made various of software, from social network to cloud drive.</p>
|
<p class="text-lg mb-1">
|
||||||
<p class="text-lg">Take a look of them on the left on your own <code>ヽ(>∀<☆)ノ</code></p>
|
The made various of software, from social network to cloud
|
||||||
|
drive.
|
||||||
|
</p>
|
||||||
|
<p class="text-lg">
|
||||||
|
Take a look of them on the left on your own
|
||||||
|
<code>ヽ(>∀<☆)ノ</code>
|
||||||
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</n-gi>
|
</n-gi>
|
||||||
</n-grid>
|
</n-grid>
|
||||||
@@ -82,8 +96,10 @@ import {
|
|||||||
NGi,
|
NGi,
|
||||||
NCarousel,
|
NCarousel,
|
||||||
NCarouselItem,
|
NCarouselItem,
|
||||||
|
NIcon,
|
||||||
useThemeVars,
|
useThemeVars,
|
||||||
} from "naive-ui";
|
} from "naive-ui";
|
||||||
|
import { LaunchRound, CodeRound } from "@vicons/material";
|
||||||
import Typed from "typed.js";
|
import Typed from "typed.js";
|
||||||
|
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
|
5
bun.lock
5
bun.lock
@@ -21,6 +21,9 @@
|
|||||||
"vue": "^3.5.18",
|
"vue": "^3.5.18",
|
||||||
"vue-router": "^4.5.1",
|
"vue-router": "^4.5.1",
|
||||||
},
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@vicons/material": "^0.13.0",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"packages": {
|
"packages": {
|
||||||
@@ -604,6 +607,8 @@
|
|||||||
|
|
||||||
"@vercel/nft": ["@vercel/nft@0.29.4", "", { "dependencies": { "@mapbox/node-pre-gyp": "^2.0.0", "@rollup/pluginutils": "^5.1.3", "acorn": "^8.6.0", "acorn-import-attributes": "^1.9.5", "async-sema": "^3.1.1", "bindings": "^1.4.0", "estree-walker": "2.0.2", "glob": "^10.4.5", "graceful-fs": "^4.2.9", "node-gyp-build": "^4.2.2", "picomatch": "^4.0.2", "resolve-from": "^5.0.0" }, "bin": { "nft": "out/cli.js" } }, "sha512-6lLqMNX3TuycBPABycx7A9F1bHQR7kiQln6abjFbPrf5C/05qHM9M5E4PeTE59c7z8g6vHnx1Ioihb2AQl7BTA=="],
|
"@vercel/nft": ["@vercel/nft@0.29.4", "", { "dependencies": { "@mapbox/node-pre-gyp": "^2.0.0", "@rollup/pluginutils": "^5.1.3", "acorn": "^8.6.0", "acorn-import-attributes": "^1.9.5", "async-sema": "^3.1.1", "bindings": "^1.4.0", "estree-walker": "2.0.2", "glob": "^10.4.5", "graceful-fs": "^4.2.9", "node-gyp-build": "^4.2.2", "picomatch": "^4.0.2", "resolve-from": "^5.0.0" }, "bin": { "nft": "out/cli.js" } }, "sha512-6lLqMNX3TuycBPABycx7A9F1bHQR7kiQln6abjFbPrf5C/05qHM9M5E4PeTE59c7z8g6vHnx1Ioihb2AQl7BTA=="],
|
||||||
|
|
||||||
|
"@vicons/material": ["@vicons/material@0.13.0", "", {}, "sha512-lKVxFNprM+CaBkUH3gt6VjIeiMsKQl2zARQMwTCZruQl2vRHzyeZiKeCflWS99CEfv2JzX/6y697smxlzyxcVw=="],
|
||||||
|
|
||||||
"@vitejs/plugin-vue": ["@vitejs/plugin-vue@6.0.1", "", { "dependencies": { "@rolldown/pluginutils": "1.0.0-beta.29" }, "peerDependencies": { "vite": "^5.0.0 || ^6.0.0 || ^7.0.0", "vue": "^3.2.25" } }, "sha512-+MaE752hU0wfPFJEUAIxqw18+20euHHdxVtMvbFcOEpjEyfqXH/5DCoTHiVJ0J29EhTJdoTkjEv5YBKU9dnoTw=="],
|
"@vitejs/plugin-vue": ["@vitejs/plugin-vue@6.0.1", "", { "dependencies": { "@rolldown/pluginutils": "1.0.0-beta.29" }, "peerDependencies": { "vite": "^5.0.0 || ^6.0.0 || ^7.0.0", "vue": "^3.2.25" } }, "sha512-+MaE752hU0wfPFJEUAIxqw18+20euHHdxVtMvbFcOEpjEyfqXH/5DCoTHiVJ0J29EhTJdoTkjEv5YBKU9dnoTw=="],
|
||||||
|
|
||||||
"@vitejs/plugin-vue-jsx": ["@vitejs/plugin-vue-jsx@5.0.1", "", { "dependencies": { "@babel/core": "^7.27.7", "@babel/plugin-transform-typescript": "^7.27.1", "@rolldown/pluginutils": "^1.0.0-beta.21", "@vue/babel-plugin-jsx": "^1.4.0" }, "peerDependencies": { "vite": "^5.0.0 || ^6.0.0 || ^7.0.0", "vue": "^3.0.0" } }, "sha512-X7qmQMXbdDh+sfHUttXokPD0cjPkMFoae7SgbkF9vi3idGUKmxLcnU2Ug49FHwiKXebfzQRIm5yK3sfCJzNBbg=="],
|
"@vitejs/plugin-vue-jsx": ["@vitejs/plugin-vue-jsx@5.0.1", "", { "dependencies": { "@babel/core": "^7.27.7", "@babel/plugin-transform-typescript": "^7.27.1", "@rolldown/pluginutils": "^1.0.0-beta.21", "@vue/babel-plugin-jsx": "^1.4.0" }, "peerDependencies": { "vite": "^5.0.0 || ^6.0.0 || ^7.0.0", "vue": "^3.0.0" } }, "sha512-X7qmQMXbdDh+sfHUttXokPD0cjPkMFoae7SgbkF9vi3idGUKmxLcnU2Ug49FHwiKXebfzQRIm5yK3sfCJzNBbg=="],
|
||||||
|
@@ -26,5 +26,8 @@
|
|||||||
"typed.js": "^2.1.0",
|
"typed.js": "^2.1.0",
|
||||||
"vue": "^3.5.18",
|
"vue": "^3.5.18",
|
||||||
"vue-router": "^4.5.1"
|
"vue-router": "^4.5.1"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@vicons/material": "^0.13.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user