This commit is contained in:
2025-12-05 22:35:54 +08:00
parent ffdf0502e2
commit 0df73b268a
8 changed files with 493 additions and 554 deletions

View File

@@ -23,30 +23,31 @@
"@astrojs/react": "^4.4.2",
"@astrojs/sitemap": "^3.6.0",
"@astrojs/vue": "^5.1.3",
"@kevisual/query": "^0.0.29",
"@kevisual/context": "^0.0.4",
"@kevisual/query": "^0.0.31",
"@kevisual/query-login": "^0.0.7",
"@kevisual/registry": "^0.0.1",
"@radix-ui/react-slot": "^1.2.4",
"@tailwindcss/vite": "^4.1.17",
"@uiw/react-md-editor": "^4.0.8",
"antd": "^6.0.0",
"astro": "^5.16.0",
"@uiw/react-md-editor": "^4.0.11",
"antd": "^6.0.1",
"astro": "^5.16.4",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"dayjs": "^1.11.19",
"es-toolkit": "^1.42.0",
"github-markdown-css": "^5.8.1",
"highlight.js": "^11.11.1",
"lucide-react": "^0.554.0",
"lucide-react": "^0.556.0",
"marked": "^17.0.1",
"marked-highlight": "^2.2.3",
"nanoid": "^5.1.6",
"react": "^19.2.0",
"react-dom": "^19.2.0",
"react": "^19.2.1",
"react-dom": "^19.2.1",
"react-toastify": "^11.0.5",
"tailwind-merge": "^3.4.0",
"vue": "^3.5.25",
"zustand": "^5.0.8"
"zustand": "^5.0.9"
},
"publishConfig": {
"access": "public"
@@ -59,7 +60,7 @@
"tailwindcss": "^4.1.17",
"tw-animate-css": "^1.4.0"
},
"packageManager": "pnpm@10.23.0",
"packageManager": "pnpm@10.24.0",
"onlyBuiltDependencies": [
"@tailwindcss/oxide",
"esbuild",

993
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,10 +1,10 @@
---
title: 'astro 例子'
title: '想要模板做什么'
tags: ['astro', 'simple', 'template']
createdAt: '2025-11-25 20:00:00'
hideInMenu: true
---
## astro-simplate-template
## 模板介绍
astro 是一个非常好的
合并文档内容和开发项目的模块

View File

@@ -4,7 +4,8 @@ export interface Props {
title?: string;
description?: string;
}
import 'github-markdown-css/github-markdown-light.css';
import 'highlight.js/styles/github-dark.css';
const { title, description } = Astro.props;
---
@@ -12,9 +13,6 @@ const { title, description } = Astro.props;
<head>
<meta charset="UTF-8" />
<title>{title || '文档'}</title>
<script src="https://cdn.tailwindcss.com"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/5.2.0/github-markdown.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/github-dark.min.css">
</head>
<body class="bg-gray-50 min-h-screen">
<div class="container mx-auto px-4 py-8 max-w-4xl">

View File

@@ -0,0 +1,4 @@
---
---
分页组件

View File

@@ -4,8 +4,9 @@ export const basename = BASE_NAME;
console.log(basename);
export const wrapBasename = (path: string) => {
const hasEnd = path.endsWith('/')
if (basename) {
return `${basename}${path}/`;
return `${basename}${path}` + (hasEnd ? '' : '/');
} else {
return path;
}

View File

@@ -1,10 +1,10 @@
---
import Html from '@/components/html.astro';
import Counter from '@/components/vue/Counter.vue';
// import Counter from '@/components/vue/Counter.vue';
---
<Html>
<main>
<Counter count={10} client:only/>
<!-- <Counter count={10} client:only/> -->
</main>
</Html>

View File

@@ -1,7 +1,7 @@
---
import { getCollection } from 'astro:content';
const posts = await getCollection('docs');
import { basename } from '@/modules/basename';
import { basename, wrapBasename } from '@/modules/basename';
import Blank from '@/layouts/blank.astro';
---
@@ -10,10 +10,7 @@ import Blank from '@/layouts/blank.astro';
<div class='max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 py-12'>
{/* 页面标题区域 */}
<div class='mb-12'>
<h1
class='text-4xl sm:text-5xl font-bold text-slate-900 dark:text-white mb-4 bg-clip-text bg-linear-to-r from-blue-600 to-purple-600'>
📚 文档列表
</h1>
<h1 class='text-4xl sm:text-5xl font-bold text-slate-900 dark:text-white mb-4 bg-clip-text bg-linear-to-r from-blue-600 to-purple-600'>📚 文档列表</h1>
<p class='text-slate-600 dark:text-slate-400 text-lg'>浏览所有可用的文档资源</p>
<div class='mt-4 h-1 w-20 bg-linear-to-r from-blue-600 to-purple-600 rounded-full'></div>
</div>
@@ -23,11 +20,12 @@ import Blank from '@/layouts/blank.astro';
{
posts.map((post) => {
const tags = post.data.tags || [];
const postUrl = wrapBasename(`/docs/${post.id}`);
return (
<article class='group bg-white dark:bg-slate-800 rounded-xl shadow-sm hover:shadow-xl transition-all duration-300 overflow-hidden border border-slate-200 dark:border-slate-700 hover:border-blue-500 dark:hover:border-blue-400'>
<div class='p-6'>
{/* 文档标题 */}
<a href={`${basename}/docs/${post.id}/`} class='block'>
<a href={postUrl} class='block'>
<h2 class='text-xl sm:text-2xl font-semibold text-slate-900 dark:text-white group-hover:text-blue-600 dark:group-hover:text-blue-400 transition-colors duration-200 mb-3'>
{post.data.title}
</h2>
@@ -50,7 +48,7 @@ import Blank from '@/layouts/blank.astro';
{/* 阅读更多指示器 */}
<a
href={`${basename}/docs/${post.id}/`}
href={postUrl}
class='mt-4 flex items-center text-blue-600 dark:text-blue-400 text-sm font-medium opacity-0 group-hover:opacity-100 transition-opacity duration-200'>
<span>阅读更多</span>
<svg