From 93fa6ad4e7aca593c788ef18d4e1329b8cb33292 Mon Sep 17 00:00:00 2001 From: Lan Date: Wed, 12 Feb 2025 14:51:08 +0800 Subject: [PATCH] feat: docs workflow --- .github/workflows/docs.yml | 17 +- docs/.vitepress/config.mts | 426 +++++++++++++++++++------------------ 2 files changed, 232 insertions(+), 211 deletions(-) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 4787a61..d047b2b 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -6,7 +6,7 @@ on: # 在针对 `main` 分支的推送上运行。如果你 # 使用 `master` 分支作为默认分支,请将其更改为 `master` push: - branches: [master] + branches: [ master ] # 允许你从 Actions 选项卡手动运行此工作流程 workflow_dispatch: @@ -32,21 +32,24 @@ jobs: uses: actions/checkout@v4 with: fetch-depth: 0 # 如果未启用 lastUpdated,则不需要 - # - uses: pnpm/action-setup@v3 # 如果使用 pnpm,请取消此区域注释 - # with: - # version: 9 + - uses: pnpm/action-setup@v3 + with: + version: 9 # - uses: oven-sh/setup-bun@v1 # 如果使用 Bun,请取消注释 - name: Setup Node uses: actions/setup-node@v4 with: node-version: 20 - cache: pnpm # 或 pnpm / yarn + cache: 'pnpm' + cache-dependency-path: 'docs/pnpm-lock.yaml' - name: Setup Pages uses: actions/configure-pages@v4 - name: Install dependencies - run: pnpm install # 或 pnpm install / yarn install / bun install + working-directory: docs + run: pnpm install - name: Build with VitePress - run: pnpm run docs:build # 或 pnpm docs:build / yarn docs:build / bun run docs:build + working-directory: docs + run: pnpm run docs:build - name: Upload artifact uses: actions/upload-pages-artifact@v3 with: diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts index 38b0a19..5bd7669 100644 --- a/docs/.vitepress/config.mts +++ b/docs/.vitepress/config.mts @@ -1,216 +1,234 @@ -import {defineConfig} from 'vitepress' +import { defineConfig } from 'vitepress' // https://vitepress.dev/reference/site-config export default defineConfig({ - title: 'FileCodeBox', - description: '简单高效的文件分享工具', - lang: 'zh-CN', - lastUpdated: true, - locales: { - root: { - label: '简体中文', - lang: 'zh-CN', - title: 'FileCodeBox', - description: '匿名口令分享文本,文件', - themeConfig: { - logo: '/logo_small.png', - nav: [ - {text: '首页', link: '/'}, - {text: '指南', link: '/guide/getting-started'}, - {text: 'API', link: '/api/'}, - { - text: '了解更多', - items: [ - {text: '更新日志', link: '/changelog'}, - {text: '贡献指南', link: '/contributing'}, - ], - }, - ], - - sidebar: { - '/guide/': [ - { - text: '介绍', - items: [ - { - text: '什么是 FileCodeBox', - link: '/guide/introduction', - }, - {text: '快速开始', link: '/guide/getting-started'}, - ], - }, - { - text: '基础功能', - items: [ - {text: '文件上传', link: '/guide/upload'}, - {text: '文件分享', link: '/guide/share'}, - {text: '文件管理', link: '/guide/management'}, - ], - }, - { - text: '高级特性', - items: [ - {text: '存储配置', link: '/guide/storage'}, - {text: '安全设置', link: '/guide/security'}, - {text: '系统配置', link: '/guide/configuration'}, - ], - }, - ], - '/api/': [ - { - text: 'API 参考', - items: [ - {text: '分享接口', link: '/api/#分享接口'}, - {text: '管理接口', link: '/api/#管理接口'}, - {text: '错误响应', link: '/api/#错误响应'}, - {text: '状态码说明', link: '/api/#状态码说明'}, - ], - }, - ], - }, - socialLinks: [ - {icon: 'github', link: 'https://github.com/vastsa/FileCodeBox'}, - ], - footer: { - message: '基于 LGPL 许可发布', - copyright: 'Copyright © 2023-present FileCodeBox', - }, - search: { - provider: 'local', - }, - outline: { - level: [2, 3], - label: '目录', - }, - }, - }, - en: { - label: 'English', - lang: 'en-US', - title: 'FileCodeBox', - description: 'Simple and efficient file sharing tool', - themeConfig: { - logo: '/logo_small.png', - nav: [ - {text: 'Home', link: '/en/'}, - {text: 'Guide', link: '/en/guide/getting-started'}, - {text: 'API', link: '/en/api/'}, - { - text: 'More', - items: [ - {text: 'Changelog', link: '/en/changelog'}, - {text: 'Contributing', link: '/en/contributing'}, - ], - }, - ], - sidebar: { - '/en/guide/': [ - { - text: 'Introduction', - items: [ - { - text: 'What is FileCodeBox', - link: '/en/guide/introduction', - }, - { - text: 'Getting Started', - link: '/en/guide/getting-started', - }, - ], - }, - { - text: 'Basic Features', - items: [ - {text: 'File Upload', link: '/en/guide/upload'}, - {text: 'File Sharing', link: '/en/guide/share'}, - {text: 'File Management', link: '/en/guide/management'}, - ], - }, - { - text: 'Advanced Features', - items: [ - {text: 'Storage Configuration', link: '/en/guide/storage'}, - {text: 'Security Settings', link: '/en/guide/security'}, - { - text: 'System Configuration', - link: '/en/guide/configuration', - }, - ], - }, - ], - '/en/api/': [ - { - text: 'API Reference', - items: [ - {text: 'Share API', link: '/en/api/#share-api'}, - {text: 'Admin API', link: '/en/api/#admin-api'}, - {text: 'Error Response', link: '/en/api/#error-response'}, - {text: 'Status Codes', link: '/en/api/#status-codes'}, - ], - }, - ], - }, - socialLinks: [ - {icon: 'github', link: 'https://github.com/vastsa/FileCodeBox'}, - ], - footer: { - message: '基于 MIT 许可发布', - copyright: 'Copyright © 2023-present FileCodeBox', - }, - search: { - provider: 'local', - }, - outline: { - level: [2, 3], - label: '目录', - }, - }, - }, - }, - - themeConfig: { - // 语言切换器 - langMenuLabel: '切换语言', - - // 社交链接 - socialLinks: [ - {icon: 'github', link: 'https://github.com/vastsa/FileCodeBox'}, + title: 'FileCodeBox', + description: '简单高效的文件分享工具', + base: '/FileCodeBox/', + lang: 'zh-CN', + lastUpdated: true, + locales: { + root: { + label: '简体中文', + lang: 'zh-CN', + title: 'FileCodeBox', + description: '匿名口令分享文本,文件', + themeConfig: { + logo: '/logo_small.png', + nav: [ + { text: '首页', link: '/' }, + { text: '指南', link: '/guide/getting-started' }, + { text: 'API', link: '/api/' }, + { + text: '了解更多', + items: [ + { text: '更新日志', link: '/changelog' }, + { text: '贡献指南', link: '/contributing' }, + ], + }, ], - // 页脚 - footer: { - message: '基于 MIT 许可发布', - copyright: 'Copyright © 2023-present FileCodeBox', - }, - - // 搜索 - search: { - provider: 'local', - options: { - locales: { - zh: { - translations: { - button: { - buttonText: '搜索文档', - buttonAriaLabel: '搜索文档', - }, - modal: { - noResultsText: '无法找到相关结果', - resetButtonTitle: '清除查询条件', - footer: { - selectText: '选择', - navigateText: '切换', - }, - }, - }, - }, + sidebar: { + '/guide/': [ + { + text: '介绍', + items: [ + { + text: '什么是 FileCodeBox', + link: '/guide/introduction', }, + { text: '快速开始', link: '/guide/getting-started' }, + ], }, + { + text: '基础功能', + items: [ + { text: '文件上传', link: '/guide/upload' }, + { text: '文件分享', link: '/guide/share' }, + { text: '文件管理', link: '/guide/management' }, + ], + }, + { + text: '高级特性', + items: [ + { text: '存储配置', link: '/guide/storage' }, + { text: '安全设置', link: '/guide/security' }, + { text: '系统配置', link: '/guide/configuration' }, + ], + }, + ], + '/api/': [ + { + text: 'API 参考', + items: [ + { text: '分享接口', link: '/api/#分享接口' }, + { text: '管理接口', link: '/api/#管理接口' }, + { text: '错误响应', link: '/api/#错误响应' }, + { text: '状态码说明', link: '/api/#状态码说明' }, + ], + }, + ], + }, + socialLinks: [ + { icon: 'github', link: 'https://github.com/vastsa/FileCodeBox' }, + ], + footer: { + message: '基于 MIT 许可发布', + copyright: 'Copyright © 2023-present FileCodeBox', + }, + search: { + provider: 'local', }, - outline: { - level: [2, 3], - label: '目录', + level: [2, 3], + label: '目录', }, + }, }, + en: { + label: 'English', + lang: 'en-US', + title: 'FileCodeBox', + description: 'Simple and efficient file sharing tool', + themeConfig: { + logo: '/logo_small.png', + nav: [ + { text: 'Home', link: '/en/' }, + { text: 'Guide', link: '/en/guide/getting-started' }, + { text: 'API', link: '/en/api/' }, + { + text: 'More', + items: [ + { text: 'Changelog', link: '/en/changelog' }, + { text: 'Contributing', link: '/en/contributing' }, + ], + }, + ], + + sidebar: { + '/en/guide/': [ + { + text: 'Introduction', + items: [ + { + text: 'What is FileCodeBox', + link: '/en/guide/introduction', + }, + { + text: 'Getting Started', + link: '/en/guide/getting-started', + }, + ], + }, + { + text: 'Basic Features', + items: [ + { text: 'File Upload', link: '/en/guide/upload' }, + { text: 'File Sharing', link: '/en/guide/share' }, + { text: 'File Management', link: '/en/guide/management' }, + ], + }, + { + text: 'Advanced Features', + items: [ + { text: 'Storage Configuration', link: '/en/guide/storage' }, + { text: 'Security Settings', link: '/en/guide/security' }, + { + text: 'System Configuration', + link: '/en/guide/configuration', + }, + ], + }, + ], + '/en/api/': [ + { + text: 'API Reference', + items: [ + { text: 'Share API', link: '/en/api/#share-api' }, + { text: 'Admin API', link: '/en/api/#admin-api' }, + { text: 'Error Response', link: '/en/api/#error-response' }, + { text: 'Status Codes', link: '/en/api/#status-codes' }, + ], + }, + ], + }, + socialLinks: [ + { icon: 'github', link: 'https://github.com/vastsa/FileCodeBox' }, + ], + footer: { + message: 'Released under the MIT License', + copyright: 'Copyright © 2023-present FileCodeBox', + }, + search: { + provider: 'local', + }, + outline: { + level: [2, 3], + label: '目录', + }, + }, + }, + }, + + themeConfig: { + // 语言切换器 + langMenuLabel: '切换语言', + + // 社交链接 + socialLinks: [ + { icon: 'github', link: 'https://github.com/vastsa/FileCodeBox' }, + ], + + // 页脚 + footer: { + message: '基于 MIT 许可发布', + copyright: 'Copyright © 2023-present FileCodeBox', + }, + + // 搜索 + search: { + provider: 'local', + options: { + locales: { + zh: { + translations: { + button: { + buttonText: '搜索文档', + buttonAriaLabel: '搜索文档', + }, + modal: { + noResultsText: '无法找到相关结果', + resetButtonTitle: '清除查询条件', + footer: { + selectText: '选择', + navigateText: '切换', + }, + }, + }, + }, + en: { + translations: { + button: { + buttonText: 'Search', + buttonAriaLabel: 'Search docs', + }, + modal: { + noResultsText: 'No results found', + resetButtonTitle: 'Clear query', + footer: { + selectText: 'to select', + navigateText: 'to navigate', + }, + }, + }, + }, + }, + }, + }, + + outline: { + level: [2, 3], + label: '目录', + }, + }, })