This commit is contained in:
2025-12-02 18:08:29 +08:00
parent ee1a23c320
commit 8e6d6855e9
16 changed files with 4138 additions and 188 deletions

View File

@@ -24,7 +24,21 @@ const basename = isDev ? undefined : `${pkgs.basename}`;
export default defineConfig({ export default defineConfig({
base: basename, base: basename,
integrations: [ integrations: [
mdx(), mdx({
// MDX 配置选项
syntaxHighlight: 'shiki', // 或 'prism'
shikiConfig: {
theme: 'github-light', // 代码高亮主题
},
remarkPlugins: [
// 添加 remark 插件
],
rehypePlugins: [
// 添加 rehype 插件
],
// 启用 MDX 表达式
optimize: true
}),
react(), // react(), //
vue(), vue(),
// sitemap(), // sitemap must be site has a domain // sitemap(), // sitemap must be site has a domain

12
dagang.json Normal file
View File

@@ -0,0 +1,12 @@
{
"bilibili": {
"url": "https://www.bilibili.com/video/BV1fQSsBtEcF/",
"iframe": "<iframe src=\"//player.bilibili.com/player.html?isOutside=true&aid=115649141607117&bvid=BV1fQSsBtEcF&cid=34445724513&p=1\" scrolling=\"no\" border=\"0\" frameborder=\"no\" framespacing=\"0\" allowfullscreen=\"true\"></iframe>"
},
"douyin": {
"url": "https://v.douyin.com/cPMkaYoQ01w/"
},
"xiaohongshu": {
"url": "https://www.xiaohongshu.com/explore/692ea923000000001e0237cb?xsec_token=YB-qcCMYiY_klyJTylGtLANcFe9O0QU4d0qVhlkgqYFOQ%3D&xsec_source=pc_creatormng"
}
}

View File

@@ -1,17 +1,17 @@
{ {
"name": "@kevisual/astro-simplate-template", "name": "@kevisual/mtd",
"version": "0.0.2", "version": "0.0.2",
"description": "", "description": "",
"main": "index.js", "main": "index.js",
"basename": "/root/astro-simplate-template-docs", "basename": "/root/mtd-docs",
"scripts": { "scripts": {
"dev": "astro dev", "dev": "astro dev",
"build": "astro build", "build": "astro build",
"preview": "astro preview", "preview": "astro preview",
"pub": "envision deploy ./dist -k astro-simplate-template-docs -v 0.0.2 -u", "pub": "envision deploy ./dist -k mtd-docs -v 0.0.2 -u",
"slide:dev": "slidev --open slides/index.md", "slide:dev": "slidev --open slides/index.md --remote",
"slide:build": "slidev build slides/index.md --base /root/astro-simplate-template-slide/", "slide:build": "slidev build slides/index.md --base /root/mtd-slide/",
"slide:pub": "envision deploy ./slides/dist -k astro-simplate-template-slide -v 0.0.2 -u", "slide:pub": "envision deploy ./slides/dist -k mtd-slide -v 0.0.2 -u",
"ui": "pnpm dlx shadcn@latest add " "ui": "pnpm dlx shadcn@latest add "
}, },
"keywords": [], "keywords": [],
@@ -27,17 +27,20 @@
"@kevisual/query-login": "^0.0.7", "@kevisual/query-login": "^0.0.7",
"@kevisual/registry": "^0.0.1", "@kevisual/registry": "^0.0.1",
"@radix-ui/react-slot": "^1.2.4", "@radix-ui/react-slot": "^1.2.4",
"@slidev/cli": "^52.10.1",
"@slidev/client": "^52.10.1",
"@slidev/theme-default": "^0.25.0",
"@tailwindcss/vite": "^4.1.17", "@tailwindcss/vite": "^4.1.17",
"@uiw/react-md-editor": "^4.0.8", "@uiw/react-md-editor": "^4.0.9",
"antd": "^6.0.0", "antd": "^6.0.0",
"astro": "^5.16.0", "astro": "^5.16.3",
"class-variance-authority": "^0.7.1", "class-variance-authority": "^0.7.1",
"clsx": "^2.1.1", "clsx": "^2.1.1",
"dayjs": "^1.11.19", "dayjs": "^1.11.19",
"es-toolkit": "^1.42.0", "es-toolkit": "^1.42.0",
"github-markdown-css": "^5.8.1", "github-markdown-css": "^5.8.1",
"highlight.js": "^11.11.1", "highlight.js": "^11.11.1",
"lucide-react": "^0.554.0", "lucide-react": "^0.555.0",
"marked": "^17.0.1", "marked": "^17.0.1",
"marked-highlight": "^2.2.3", "marked-highlight": "^2.2.3",
"nanoid": "^5.1.6", "nanoid": "^5.1.6",
@@ -46,7 +49,7 @@
"react-toastify": "^11.0.5", "react-toastify": "^11.0.5",
"tailwind-merge": "^3.4.0", "tailwind-merge": "^3.4.0",
"vue": "^3.5.25", "vue": "^3.5.25",
"zustand": "^5.0.8" "zustand": "^5.0.9"
}, },
"publishConfig": { "publishConfig": {
"access": "public" "access": "public"
@@ -59,7 +62,7 @@
"tailwindcss": "^4.1.17", "tailwindcss": "^4.1.17",
"tw-animate-css": "^1.4.0" "tw-animate-css": "^1.4.0"
}, },
"packageManager": "pnpm@10.23.0", "packageManager": "pnpm@10.24.0",
"onlyBuiltDependencies": [ "onlyBuiltDependencies": [
"@tailwindcss/oxide", "@tailwindcss/oxide",
"esbuild", "esbuild",

3831
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,34 @@
<template>
<div @click="onClick" class="mr-2 py-1 inline text-gray-500" hover:bg="white op-10">
<slot>
<carbon:arrow-left v-if="props.arrow === 'left'" />
<carbon:arrow-right v-else-if="props.arrow === 'right'" />
<carbon:arrow-up v-else-if="props.arrow === 'up'" />
<carbon:arrow-down v-else-if="props.arrow === 'down'" />
<carbon:arrow-left v-else />
</slot>
</div>
</template>
<script setup lang="ts">
import { useSlideContext } from '@slidev/client';
const { $slidev } = useSlideContext();
const props = defineProps({
go: {
default: 1,
},
arrow: {
type: String,
default: 'left', // 'left', 'right', 'up', or 'down'
},
});
const onClick = () => {
const go = props.go;
if (go <= 0) {
$slidev.nav.go(1);
return;
}
$slidev.nav.go(go);
};
</script>

View File

@@ -0,0 +1,19 @@
<!-- Foo.vue -->
<template>
<div class="fixed bottom-3 right-2 text-gray-300 font-light text-sm">
<a :href="link + basename">{{ link + basename }}</a>
</div>
</template>
<script setup lang="ts">
const props = defineProps({
link: {
type: String,
default: 'https://kevisual.cn',
},
basename: {
type: String,
default: '',
},
});
</script>

View File

@@ -1,9 +1,10 @@
--- ---
theme: default # theme: default
# random image from a curated Unsplash collection by Anthony # random image from a curated Unsplash collection by Anthony
background: https://cover.sli.dev # background: https://cover.sli.dev
background: https://cdn.jsdelivr.net/gh/slidevjs/slidev-covers@main/static/rRpZIM_IJmc.webp
# 介绍文档: https://sli.dev # 介绍文档: https://sli.dev
title: Welcome to Slidev title: 介绍开源多维表格
info: | info: |
## 关于Slidev的介绍 ## 关于Slidev的介绍
演示稿 演示稿
@@ -18,11 +19,43 @@ mdc: true
htmlAttrs: htmlAttrs:
dir: ltr dir: ltr
lang: zh-CN lang: zh-CN
fonts:
# 基础字体
sans: Robot
# 与 UnoCSS 的 `font-serif` css 类一同使用
serif: Robot Slab
# 用于代码块、内联代码等
mono: Fira Code
# duration of the presentation # duration of the presentation
duration: 35min duration: 35min
--- ---
# slide 是一个 所见即所得的幻灯片制作工具
# 开源多维表格
多维表格也称为OLAP表格是一种用于数据分析和报表的工具允许用户从多个维度查看和分析数据。它们通常用于商业智能BI应用程序中以帮助用户理解复杂的数据集。
<!--
1. 为什么介绍多维表格
我想把自己知道的最好用的方式分享给大家
他对我们日常生活,规范化知识非常有用
2. 好用在哪里
数据展示
作为一个程序员接触db比较多
知识库AI自动化知识管理
3. 扩展自动化
api
智能化
-->
--- ---
src: ./demos/contents.md src: ./pages/contents.md
hide: false hide: false
--- ---

1
slides/kevisual.json Normal file
View File

@@ -0,0 +1 @@
{}

View File

@@ -1,10 +1,164 @@
--- ---
title: '例子' transition: fade-out
layout: image-right
image: https://kevisual.cn/root/resources/upload/1.0.0/2025-12/rRpZIM_IJmc.webp
--- ---
# 常用语法结构 # 拆分多维表格功能
> 多维表格的大体功能而言,只是把程序开发的后端的数据库由前端展现了出来,并同时可观测性和交互性。
<br />
- [表格可视化,功能筛选,多维表格视图](/3)
- [看板可视化,仪表盘展示任务管理](/4)
- [日历可视化,根据日期分析](/5)
- [画廊可视化,展示图片和多媒体内容](/6)
扩展:
1. 自动化解决方案
2. 根据数据自己分析
<v-click>
<img src="https://kevisual.cn/root/resources/upload/1.0.0/2025-12/2025-12-02_12-17.png" alt="多维表格功能拆分" style="max-width: 80%; height: auto;" />
</v-click>
<MyFooter basename='/root/mtd-slide/' />
<!--
API 自动化
https://nocodb.kevisual.cn/dashboard/#/base/d1ea31d6-0809-4f50-8312-78b7e9930ede
- 为什么介绍多维表格
我想把自己知道的最好用的方式分享给大家
他对我们日常生活,规范化知识非常有用
- 好用在哪里
数据展示
作为一个程序员接触db比较多
知识库AI自动化知识管理
- 扩展自动化 api
智能化
-->
--- ---
transition: fade-out
--- ---
# 第二个 # <go-back :go="2" /> 表格可视化
数据表等于数据库,数据表的每一行等于数据库中的一条记录,每一列等于数据库中的一个字段。高级在于表格的可视化和交互性,很类似 Excel 的功能。
<br />
<center>
<a href="https://nocodb.kevisual.cn/dashboard/#/nc/pkgmmh488p3ptrv/mkv0cc0f6cjsy4e/vw8nrnczj8ude334/01-%25E6%2588%2590%25E5%2591%2598%25E8%25A1%25A8" _target="_blank" rel="noopener">
<img src="https://kevisual.cn/root/resources/upload/1.0.0/2025-12/Snipaste_2025-12-01_23-05-11.png" alt="表格可视化" style="max-width: 60%; height: auto;" />
</a>
</center>
<MyFooter basename='/root/mtd-slide/' />
---
transition: fade-out
---
# <go-back :go="2" /> 看板功能
看板多用于**项目管理,工作流,任务与待办事项管理,内容管理**等场景。通过看板视图,可以将任务或项目以卡片的形式进行展示和管理,支持拖拽操作,方便用户调整任务的优先级和状态。
<br />
<center>
<a href="https://nocodb.kevisual.cn/dashboard/#/nc/pkgmmh488p3ptrv/mur63rlt7yjkmvi/vwk9vl1e8yhec1be/03-%25E4%25BB%25BB%25E5%258A%25A1%25E8%25A1%25A8-%25E7%259C%258B%25E6%259D%25BF" _target="_blank" rel="noopener">
<img src="https://kevisual.cn/root/resources/upload/1.0.0/2025-12/Snipaste_2025-12-01_23-25-54.png" alt="看板功能" style="max-width: 60%; height: auto;" />
</a>
</center>
<MyFooter basename='/root/mtd-slide/' />
---
transition: fade-out
---
# <go-back :go="2" /> 日历功能
查看当天的任务,事件安排等,通过日历视图,可以直观地了解每天、每周或每月的任务分布情况,方便进行时间管理和计划安排。
<br />
<center>
<a href="https://nocodb.kevisual.cn/dashboard/#/nc/pkgmmh488p3ptrv/mur63rlt7yjkmvi/vwupcjfo7ylt2gf2/03-%25E4%25BB%25BB%25E5%258A%25A1%25E8%25A1%25A8-%25E6%2597%25A5%25E5%258E%2586" _target="_blank" rel="noopener">
<img src="https://kevisual.cn/root/resources/upload/1.0.0/2025-12/Snipaste_2025-12-01_23-29-39.png" alt="日历功能" style="max-width: 50%; height: auto;" />
</a>
</center>
<MyFooter basename='/root/mtd-slide/' />
---
transition: fade-out
---
# <go-back :go="2" /> 画廊功能和表单
画廊功能主要用于展示图片、多媒体内容等,适合用于作品集、产品展示等场景。用户可以通过画廊视图浏览和管理多媒体资源。
<br />
<center>
<a href="https://nocodb.kevisual.cn/dashboard/#/nc/pkgmmh488p3ptrv/mxv69rskicd2kxy/vwhqc15y3vrjkygg/05-%25E7%2594%25BB%25E5%25BB%258A-%25E7%2594%25BB%25E5%25BB%258A" _target="_blank" rel="noopener">
<img src="https://kevisual.cn/root/resources/upload/1.0.0/2025-12/Snipaste_2025-12-01_23-53-48.png" alt="画廊功能" style="max-width: 50%; height: auto;" />
</a>
</center>
<MyFooter basename='/root/mtd-slide/' />
---
transition: fade-out
---
# 总结
多维表格功能通过多种视图和交互方式,提升了数据的可视化和管理效率,适用于各种数据管理和分析场景。一切应用的底层基础设施。
- 交互性
> 把这个可视化的数据当做一个数据库来使用,通过筛选获取想要的类型数据。
<br />
- 可扩展性
> 通过`webhook`和数据的状态判断,能够实现各种灵活性的动态修改数据。
<br />
- 自动化场景
> 博客,个人任务管理,知识库,企业管理,信息管理,数据都能放这里,然后通过自动化实现各种功能。
<MyFooter basename='/root/mtd-slide/' />
---
transition: fade-out
layout: image-right
image: https://cdn.jsdelivr.net/gh/slidevjs/slidev-covers@main/static/9jFPVQzUgNY.webp
---
# 规划任务
- 怎么自部署开源表格nocodb
- 使用案例技巧,解决方案
- 个人知识库,笔记,备忘录
- 任务管理,待办事项
- AI自动化
- 联动自己网页
<MyFooter basename='/root/mtd-slide/' />
<!--
大纲
没有扩展,就只等于一个数据
下期任务
本地部署,自己电脑的一个可执行文件,只能本地访问
部署到云服务器上,可以公网访问
-->

83
src/data/docs/01-base.md Normal file
View File

@@ -0,0 +1,83 @@
---
title: '多维表格基本介绍'
tags: ['mdt', '表格']
createdAt: '2025-11-26 02:00:00'
---
# 多维表格基本介绍
多维表格 是一种结构灵活、支持多维度数据关联与动态分析的智能数据管理工具。
多维度 >> 多视图 去查看,分析数据
## 视图类型
- 表格
- 看板
- 画廊
- 表单
- 日历
## 自动化
多维表格的数据可视,可以通过自动化编写功能实现自动把数据存储和修改。触发自动化功能。
## 实现什么
-----
# nocodb 使用教程大纲
## 1. nocodb概述
## 2. 部署方式
## 3. 项目和表和视图
## 4. 模板
## 5. 自动化实现
## 6. 使用案例
### 1. 任务管理
看板系列等
项目管理
### 2. 客户关系
关系表等
CRM客户管理联系人沟通记录合同销售自动统计转化率
人事管理,档案,入职时间,绩效,培训记录
### 3. 库存采购管理
表格等
关联仓库,供应商,采购单,销售订单,实时预警
### 4. 博客内容管理
数据表等
### 5. 数据看板
分析看板等
统计,分析,自动化
### 6. 课程管理
课程关联讲师,学员,课时,作业,课表
### 7. 内容运营
选题,发布时间,可视化

View File

@@ -1,8 +0,0 @@
---
title: 'astro 概览'
tags: ['astro', 'simple', 'template']
createdAt: '2025-11-25 20:00:00'
hideInMenu: true
---
## 概览

View File

@@ -1,10 +0,0 @@
---
title: 'astro 例子'
tags: ['astro', 'simple', 'template']
createdAt: '2025-11-25 20:00:00'
hideInMenu: true
---
## astro-simplate-template
astro 是一个非常好的

26
src/layouts/MDXPost.astro Normal file
View File

@@ -0,0 +1,26 @@
---
import '../styles/global.css';
export interface Props {
title?: string;
description?: string;
}
const { title, description } = Astro.props;
---
<html lang="zh-CN">
<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">
<article class="markdown-body bg-white rounded-lg shadow-lg p-8">
<slot />
</article>
</div>
</body>
</html>

View File

@@ -22,6 +22,6 @@ const staticPaths = await getStaticPaths();
const menu = staticPaths.map((item) => item.data); const menu = staticPaths.map((item) => item.data);
--- ---
<Main showMenu={showMenu} menu={menu} basename={basename}> <Main showMenu={showMenu} menu={menu} basename={basename} title={post.data.title}>
<Content /> <Content />
</Main> </Main>

View File

@@ -1,47 +0,0 @@
---
// import { query } from '@/modules/query.ts';
console.log('Hello from index.astro');
import '../styles/global.css';
---
<html lang='en'>
<head>
<title>My Homepage</title>
</head>
<body>
<h1 onclick="{onClick}">Welcome to my website!</h1>
<div class='bg-amber-50 w-20 h-20 rounded-full'></div>
<div id='root'></div>
<script type='importmap' data-vite-ignore is:inline>
{
"imports": {
"react": "https://esm.sh/react@19.1.0",
"react-dom": "https://esm.sh/react-dom@19.1.0/client.js",
"react-toastify": "https://esm.sh/react-toastify@11.0.5"
}
}
</script>
<script type='module' data-vite-ignore is:inline>
import { Button, message } from 'https://esm.sh/antd?standalone';
import React from 'react';
import { ToastContainer, toast } from 'react-toastify';
import { createRoot } from 'react-dom';
setTimeout(() => {
toast.loading('Hello from index.astro');
window.toast = toast;
console.log('message', toast);
}, 1000);
console.log('Hello from index.astro', Button);
const root = document.getElementById('root');
const render = createRoot(root);
const App = () => {
const button = React.createElement(Button, null, 'Hello');
const messageEl = React.createElement(ToastContainer, null, 'Hello');
const wrapperMessage = React.createElement('div', null, [button, messageEl]);
return wrapperMessage;
};
// render.render(React.createElement(Button, null, 'Hello'), root);
render.render(App(), root);
</script>
</body>
</html>

7
src/pages/index.mdx Normal file
View File

@@ -0,0 +1,7 @@
---
layout: ../layouts/MDXPost.astro
---
# 什么是多维表格
多维表格是一种用于展示和分析数据的表格形式,它允许用户在多个维度上对数据进行切片和钻取。