website: 首页增加下载卡片,整理文档内容
All checks were successful
TDevOpsCICD / build-kit (push) Successful in 5m33s

This commit is contained in:
jif2.zhang 2026-09-11 11:06:39 +08:00
parent 297c2366f2
commit e5e38a16eb
15 changed files with 255 additions and 198 deletions

View File

@ -1,12 +0,0 @@
---
slug: first-blog-post
title: First Blog Post
authors:
name: Gao Wei
title: Docusaurus Core Team
url: https://github.com/wgao19
image_url: https://github.com/wgao19.png
tags: [hola, docusaurus]
---
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet

View File

@ -1,44 +0,0 @@
---
slug: long-blog-post
title: Long Blog Post
authors: endi
tags: [hello, docusaurus]
---
This is the summary of a very long blog post,
Use a `<!--` `truncate` `-->` comment to limit blog post size in the list view.
<!--truncate-->
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet

View File

@ -1,20 +0,0 @@
---
slug: mdx-blog-post
title: MDX Blog Post
authors: [slorber]
tags: [docusaurus]
---
Blog posts support [Docusaurus Markdown features](https://docusaurus.io/docs/markdown-features), such as [MDX](https://mdxjs.com/).
:::tip
Use the power of React to create interactive blog posts.
```js
<button onClick={() => alert('button clicked!')}>Click me!</button>
```
<button onClick={() => alert('button clicked!')}>Click me!</button>
:::

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

View File

@ -1,25 +0,0 @@
---
slug: welcome
title: Welcome
authors: [slorber, yangshun]
tags: [facebook, hello, docusaurus]
---
[Docusaurus blogging features](https://docusaurus.io/docs/blog) are powered by the [blog plugin](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog).
Simply add Markdown files (or folders) to the `blog` directory.
Regular blog authors can be added to `authors.yml`.
The blog post date can be extracted from filenames, such as:
- `2019-05-30-welcome.md`
- `2019-05-30-welcome/index.md`
A blog post folder can be convenient to co-locate blog post images:
![Docusaurus Plushie](./docusaurus-plushie-banner.jpeg)
The blog supports tags as well!
**And if you don't want a blog**: just delete this directory, and use `blog: false` in your Docusaurus config.

View File

@ -1,17 +0,0 @@
endi:
name: Endilie Yacop Sucipto
title: Maintainer of Docusaurus
url: https://github.com/endiliey
image_url: https://github.com/endiliey.png
yangshun:
name: Yangshun Tay
title: Front End Engineer @ Facebook
url: https://github.com/yangshun
image_url: https://github.com/yangshun.png
slorber:
name: Sébastien Lorber
title: Docusaurus maintainer
url: https://sebastienlorber.com
image_url: https://github.com/slorber.png

75
website/docs/features.md Normal file
View File

@ -0,0 +1,75 @@
---
sidebar_position: 2
---
# 功能概览
kit 提供命令行工具、脚本组装、运维管理三大核心能力。
## 命令行工具
kit 内置跨平台的常用命令,解决 Windows/Linux 脚本兼容性问题:
| 命令 | 说明 |
|------|------|
| `info` | 查看系统信息 |
| `mkdir` | 创建目录 |
| `rm` | 删除文件/目录 |
| `cp` | 复制文件 |
| `mv` | 移动文件 |
| `zip` | 压缩/解压 |
| `md5` | 计算 MD5 |
| `readJson` | 读取 JSON 文件 |
| `writeJson` | 写入 JSON 文件 |
## 远程操作
| 命令 | 说明 |
|------|------|
| `scp` | 跨主机文件传输 |
| `remoteShell` | SSH 远程执行命令 |
## 模块管理
kit 可作为模块管理器,从远程仓库安装、升级、卸载工具:
```shell
# 安装模块
kit install myapp
# 指定版本安装
kit install myapp@1.0
# 查看已安装版本
kit list myapp
# 切换版本
kit use myapp@1.0
# 回滚到上一个版本
kit rollback myapp
# 删除版本
kit remove myapp@1.0
```
## 脚本组装
kit 支持通过脚本文件(`kitx.js`)组合各种能力,实现工作流自动化:
```js
// kitx.js
async function main() {
console.log("开始部署...");
mkdir("./dist");
cp("./src/*", "./dist/");
scp("./dist/", "server:/app/");
remoteShell({host: "server"}, "cd /app && restart.sh");
}
```
运行脚本:
```shell
kit run
```

View File

@ -4,19 +4,44 @@ sidebar_position: 1
# 安装 # 安装
kit 支持 Windowsx86_64、Linux(x86_64)、 Linux(arm64)、 Alpine 等多个执行平台。 kit 是一个跨平台命令行工具,支持以下平台:
下载地址http://baishe.fullstack.club:5244/ | 平台 | 架构 | 说明 |
|------|------|------|
| Windows | x86_64 | `kit.exe` |
| Linux | x86_64 | 现代 glibcUbuntu 20.04+ |
| Linux | x86_64 | Kylin V10 低版本 glibc |
## 下载
前往首页下载对应平台的二进制文件:
- **Windows**: [kit.exe](https://pub-98ee77ce79984c2cad0dc1c300901158.r2.dev/data/windows/kit.exe)
- **Linux (现代 glibc)**: [kit](https://pub-98ee77ce79984c2cad0dc1c300901158.r2.dev/data/linux/kit)
- **Linux (Kylin V10)**: [kit.zip](https://pub-98ee77ce79984c2cad0dc1c300901158.r2.dev/data/kylin/kit.zip)
下载后将可执行文件添加到系统 `PATH` 中即可使用。
## 远程仓库 ## 远程仓库
kit 支持从远程仓库安装和管理模块。配置仓库地址:
```shell ```shell
kit config remoteServer http://baishe.fullstack.club:5244/dav kit config remoteServer http://baishe.fullstack.club:5244/dav
kit config remoteAuth cheney@722V587 kit config remoteAuth cheney@722V587
``` ```
## 信雅达内部仓库 ### 信雅达内部仓库
```shell ```shell
kit config remoteServer http://172.16.17.230:5244/dav kit config remoteServer http://172.16.17.230:5244/dav
kit config remoteAuth kit@kitkit kit config remoteAuth kit@kitkit
``` ```
## 验证
配置完成后,运行以下命令验证仓库连接:
```shell
kit remote
```

View File

@ -1,6 +1,10 @@
--- ---
sidebar_position: 1 sidebar_position: 3
--- ---
# 更多 # 更多文档
等多文档请移步 -> **[Kit 辅助开发工具](https://flowus.cn/fullstack/share/9e90b5b7-cea7-44d7-9231-e5d8a6c807f9)**
详细的 API 文档和使用示例,请参考:
- **在线文档**: [Kit 辅助开发工具](https://flowus.cn/fullstack/share/9e90b5b7-cea7-44d7-9231-e5d8a6c807f9)
- **代码仓库**: [git.honor3.com/Fullstack/kit.program](http://git.honor3.com/Fullstack/kit.program)

View File

@ -1,8 +1,4 @@
// @ts-check // @ts-check
// `@type` JSDoc annotations allow editor autocompletion and type checking
// (when paired with `@ts-check`).
// There are various equivalent ways to declare your Docusaurus config.
// See: https://docusaurus.io/docs/api/docusaurus-config
import {themes as prismThemes} from 'prism-react-renderer'; import {themes as prismThemes} from 'prism-react-renderer';
@ -12,23 +8,15 @@ const config = {
tagline: '手边的开发运维工具', tagline: '手边的开发运维工具',
favicon: 'img/favicon.ico', favicon: 'img/favicon.ico',
// Set the production url of your site here
url: 'http://kit.fullstack.club', url: 'http://kit.fullstack.club',
// Set the /<baseUrl>/ pathname under which your site is served
// For GitHub pages deployment, it is often '/<projectName>/'
baseUrl: '/', baseUrl: '/',
// GitHub pages deployment config. organizationName: 'Fullstack',
// If you aren't using GitHub pages, you don't need these. projectName: 'kit.program',
organizationName: 'facebook', // Usually your GitHub org/user name.
projectName: 'docusaurus', // Usually your repo name.
onBrokenLinks: 'throw', onBrokenLinks: 'throw',
onBrokenMarkdownLinks: 'warn', onBrokenMarkdownLinks: 'warn',
// Even if you don't use internationalization, you can use this field to set
// useful metadata like html lang. For example, if your site is Chinese, you
// may want to replace "en" with "zh-Hans".
i18n: { i18n: {
defaultLocale: 'zh', defaultLocale: 'zh',
locales: ['zh'], locales: ['zh'],
@ -41,18 +29,8 @@ const config = {
({ ({
docs: { docs: {
sidebarPath: './sidebars.js', sidebarPath: './sidebars.js',
// Please change this to your repo.
// Remove this to remove the "edit this page" links.
editUrl:
'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
},
blog: {
showReadingTime: true,
// Please change this to your repo.
// Remove this to remove the "edit this page" links.
editUrl:
'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
}, },
blog: false,
theme: { theme: {
customCss: './src/css/custom.css', customCss: './src/css/custom.css',
}, },
@ -63,45 +41,57 @@ const config = {
themeConfig: themeConfig:
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */ /** @type {import('@docusaurus/preset-classic').ThemeConfig} */
({ ({
// Replace with your project's social card
image: 'img/docusaurus-social-card.jpg', image: 'img/docusaurus-social-card.jpg',
navbar: { navbar: {
title: 'Kit 项目主页', title: 'Kit',
logo: { logo: {
alt: 'kit logo is still in production', alt: 'Kit logo',
src: 'img/logo.svg', src: 'img/logo.svg',
}, },
items: [ items: [
{ href: 'https://flowus.cn/fullstack/share/9e90b5b7-cea7-44d7-9231-e5d8a6c807f9', label: '文档', position: 'right'} {
type: 'docSidebar',
sidebarId: 'tutorialSidebar',
position: 'left',
label: '文档',
},
{
href: 'http://git.honor3.com/Fullstack/kit.program',
label: '仓库',
position: 'right',
},
], ],
}, },
footer: { footer: {
style: 'dark', style: 'dark',
links: [ links: [
{ {
title: 'More', title: 'Kit',
items: [ items: [
{ {
label: '代码仓库', label: '下载',
href: 'https://gitee.com/fullstackclub/kit.git', to: '/',
}, },
{ {
label: '开发者博客', label: '文档',
to: 'http://gpio.me', to: '/docs/intro',
}, },
{ {
label: '反馈', label: '功能概览',
to: 'mailto:hq@gpio.me', to: '/docs/features',
}, },
], ],
}, },
{ {
title: 'Docs', title: '社区',
items: [ items: [
{ {
label: '文档', label: '代码仓库',
to: 'https://flowus.cn/fullstack/share/9e90b5b7-cea7-44d7-9231-e5d8a6c807f9', href: 'http://git.honor3.com/Fullstack/kit.program',
},
{
label: '反馈',
href: 'mailto:hq@gpio.me',
}, },
], ],
}, },
@ -111,6 +101,7 @@ const config = {
prism: { prism: {
theme: prismThemes.github, theme: prismThemes.github,
darkTheme: prismThemes.dracula, darkTheme: prismThemes.dracula,
additionalLanguages: ['bash'],
}, },
}), }),
}; };

View File

@ -1,33 +1,10 @@
/**
* Creating a sidebar enables you to:
- create an ordered group of docs
- render a sidebar for each doc of that group
- provide next/previous navigation
The sidebars can be generated from the filesystem, or explicitly defined here.
Create as many sidebars as you want.
*/
// @ts-check
/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */ /** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
const sidebars = { const sidebars = {
// By default, Docusaurus generates a sidebar from the docs folder structure
tutorialSidebar: [{type: 'autogenerated', dirName: '.'}],
// But you can create a sidebar manually
/*
tutorialSidebar: [ tutorialSidebar: [
'intro', 'intro',
'hello', 'features',
{ 'more',
type: 'category',
label: 'Tutorial',
items: ['tutorial-basics/create-a-document'],
},
], ],
*/
}; };
export default sidebars; export default sidebars;

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,33 @@
.downloads {
display: flex;
align-items: center;
padding: 2rem 0 4rem;
width: 100%;
}
.downloadCard {
display: flex;
flex-direction: column;
justify-content: space-between;
height: 100%;
transition: box-shadow 0.2s;
}
.downloadCard:hover {
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}
.iconWrap {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 0.5rem;
color: var(--ifm-color-primary);
}
.filename {
font-family: var(--ifm-font-family-monospace);
font-size: 0.85rem;
color: var(--ifm-color-emphasis-600);
margin: 0;
}

View File

@ -3,6 +3,7 @@ import Link from '@docusaurus/Link';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext'; import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
import Layout from '@theme/Layout'; import Layout from '@theme/Layout';
import HomepageFeatures from '@site/src/components/HomepageFeatures'; import HomepageFeatures from '@site/src/components/HomepageFeatures';
import DownloadSection from '@site/src/components/DownloadSection';
import Heading from '@theme/Heading'; import Heading from '@theme/Heading';
import styles from './index.module.css'; import styles from './index.module.css';
@ -33,10 +34,11 @@ export default function Home() {
return ( return (
<Layout <Layout
title={`${siteConfig.title}`} title={`${siteConfig.title}`}
description="Description will go into a meta tag in <head />"> description="手边的开发运维工具">
<HomepageHeader /> <HomepageHeader />
<main> <main>
<HomepageFeatures /> <HomepageFeatures />
<DownloadSection />
</main> </main>
</Layout> </Layout>
); );

View File

@ -1,7 +0,0 @@
---
title: Markdown page example
---
# Markdown page example
You don't need React to write simple standalone pages.