md2ui 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +63 -181
- package/bin/md2ui.js +2 -2
- package/package.json +1 -1
- package/src/style.css +2 -1
- package/vite.config.js +4 -1
package/README.md
CHANGED
|
@@ -1,230 +1,112 @@
|
|
|
1
1
|
# md2ui
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
一个轻量级的文档渲染系统,将本地 Markdown 文档转换为美观的 HTML 页面。
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## 核心特性
|
|
6
6
|
|
|
7
|
-
-
|
|
8
|
-
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
11
|
-
- 🔍 **目录导航** - 自动提取文档大纲
|
|
12
|
-
- 📱 **响应式设计** - 适配不同屏幕尺寸
|
|
13
|
-
- ⚡ **快速加载** - 基于 Vite 构建
|
|
7
|
+
- 自动化目录 - 扫描文档文件夹,自动生成多级导航树
|
|
8
|
+
- 三栏布局 - 左侧导航、中间内容、右侧大纲
|
|
9
|
+
- Markdown 增强 - 支持 GFM 语法、代码高亮、Mermaid 图表
|
|
10
|
+
- 交互优化 - 可拖拽调整宽度、折叠侧边栏、阅读进度显示
|
|
14
11
|
|
|
15
|
-
##
|
|
12
|
+
## 效果图
|
|
16
13
|
|
|
17
|
-
|
|
18
|
-
- Vite - 下一代前端构建工具
|
|
19
|
-
- Marked - Markdown 解析器
|
|
20
|
-
- Mermaid - 图表渲染库
|
|
21
|
-
- Lucide Vue - 图标库
|
|
14
|
+

|
|
22
15
|
|
|
23
|
-
##
|
|
16
|
+
## 安装使用
|
|
24
17
|
|
|
25
|
-
|
|
26
|
-
md2ui/
|
|
27
|
-
├── public/ # 静态资源
|
|
28
|
-
│ ├── README.md # 首页内容
|
|
29
|
-
│ └── docs/ # 文档目录
|
|
30
|
-
│ ├── 00-项目概览.md
|
|
31
|
-
│ ├── 代码结构/
|
|
32
|
-
│ └── 架构设计/
|
|
33
|
-
├── src/
|
|
34
|
-
│ ├── api/ # API 接口
|
|
35
|
-
│ │ └── docs.js # 文档列表获取
|
|
36
|
-
│ ├── components/ # 组件
|
|
37
|
-
│ │ ├── TreeNode.vue # 树形节点
|
|
38
|
-
│ │ └── TableOfContents.vue # 目录组件
|
|
39
|
-
│ ├── composables/ # 组合式函数
|
|
40
|
-
│ │ ├── useMarkdown.js # Markdown 渲染
|
|
41
|
-
│ │ ├── useScroll.js # 滚动处理
|
|
42
|
-
│ │ └── useResize.js # 拖拽调整
|
|
43
|
-
│ ├── App.vue # 主组件
|
|
44
|
-
│ ├── main.js # 入口文件
|
|
45
|
-
│ └── style.css # 全局样式
|
|
46
|
-
├── index.html # HTML 模板
|
|
47
|
-
├── vite.config.js # Vite 配置
|
|
48
|
-
└── package.json # 项目配置
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
## 快速开始
|
|
52
|
-
|
|
53
|
-
### 安装依赖
|
|
54
|
-
|
|
55
|
-
```bash
|
|
56
|
-
pnpm install
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
### 开发模式
|
|
18
|
+
### 从 npm 安装(推荐)
|
|
60
19
|
|
|
61
20
|
```bash
|
|
62
|
-
|
|
21
|
+
npm install -g md2ui
|
|
63
22
|
```
|
|
64
23
|
|
|
65
|
-
|
|
24
|
+
### 使用方法
|
|
66
25
|
|
|
67
|
-
|
|
26
|
+
在包含 `.md` 文件的目录下运行:
|
|
68
27
|
|
|
69
28
|
```bash
|
|
70
|
-
|
|
29
|
+
cd /path/to/your/docs
|
|
30
|
+
md2ui
|
|
71
31
|
```
|
|
72
32
|
|
|
73
|
-
|
|
33
|
+
指定端口:
|
|
74
34
|
|
|
75
35
|
```bash
|
|
76
|
-
|
|
36
|
+
md2ui -p 8080
|
|
77
37
|
```
|
|
78
38
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
### 目录结构
|
|
39
|
+
访问 http://localhost:3000 查看文档(默认端口 3000)。
|
|
82
40
|
|
|
83
|
-
|
|
41
|
+
### 文档组织
|
|
84
42
|
|
|
85
43
|
```
|
|
86
|
-
|
|
87
|
-
├──
|
|
88
|
-
├──
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
└── 架构设计/
|
|
94
|
-
└── 01-核心业务流程.md
|
|
44
|
+
your-docs/
|
|
45
|
+
├── README.md # 首页内容
|
|
46
|
+
├── 00-快速开始.md
|
|
47
|
+
├── 01-功能特性.md
|
|
48
|
+
└── 02-进阶指南/
|
|
49
|
+
├── 01-目录结构.md
|
|
50
|
+
└── 02-自定义配置.md
|
|
95
51
|
```
|
|
96
52
|
|
|
97
|
-
|
|
53
|
+
文件命名规则:
|
|
54
|
+
- 使用 `序号-名称.md` 格式控制排序,如 `01-快速开始.md`
|
|
55
|
+
- 文件夹也支持序号前缀,如 `02-进阶指南/`
|
|
56
|
+
- 序号越小越靠前
|
|
98
57
|
|
|
99
|
-
|
|
100
|
-
- 序号用于控制排序,数字越小越靠前
|
|
101
|
-
- 文件夹也可以使用序号前缀
|
|
58
|
+
## 开发维护
|
|
102
59
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
首页内容来自 `public/README.md` 文件,可以自定义项目介绍、快速开始等内容。
|
|
106
|
-
|
|
107
|
-
## 功能说明
|
|
108
|
-
|
|
109
|
-
### 左侧导航栏
|
|
110
|
-
|
|
111
|
-
- 显示文档目录树
|
|
112
|
-
- 支持文件夹展开/折叠
|
|
113
|
-
- 支持全部展开/收起
|
|
114
|
-
- 可拖拽调整宽度
|
|
115
|
-
- 可收起/展开
|
|
116
|
-
|
|
117
|
-
### 中间内容区
|
|
118
|
-
|
|
119
|
-
- 渲染 Markdown 文档
|
|
120
|
-
- 支持代码高亮
|
|
121
|
-
- 支持 Mermaid 图表
|
|
122
|
-
- 显示阅读进度
|
|
123
|
-
- 返回顶部按钮
|
|
124
|
-
|
|
125
|
-
### 右侧目录
|
|
126
|
-
|
|
127
|
-
- 自动提取文档标题
|
|
128
|
-
- 支持多级标题
|
|
129
|
-
- 点击跳转到对应位置
|
|
130
|
-
- 高亮当前阅读位置
|
|
131
|
-
- 可拖拽调整宽度
|
|
132
|
-
- 可收起/展开
|
|
133
|
-
|
|
134
|
-
## 自定义配置
|
|
135
|
-
|
|
136
|
-
### 修改端口
|
|
137
|
-
|
|
138
|
-
编辑 `vite.config.js`:
|
|
139
|
-
|
|
140
|
-
```javascript
|
|
141
|
-
export default defineConfig({
|
|
142
|
-
server: {
|
|
143
|
-
port: 3000 // 修改为你想要的端口
|
|
144
|
-
}
|
|
145
|
-
})
|
|
146
|
-
```
|
|
60
|
+
如果你想参与开发或自定义功能:
|
|
147
61
|
|
|
148
|
-
###
|
|
62
|
+
### 环境准备
|
|
149
63
|
|
|
150
|
-
|
|
64
|
+
```bash
|
|
65
|
+
# 克隆项目
|
|
66
|
+
git clone https://github.com/user/md2ui.git
|
|
67
|
+
cd md2ui
|
|
151
68
|
|
|
152
|
-
|
|
153
|
-
|
|
69
|
+
# 安装依赖
|
|
70
|
+
pnpm install
|
|
154
71
|
```
|
|
155
72
|
|
|
156
|
-
|
|
73
|
+
### 开发模式
|
|
157
74
|
|
|
158
|
-
```
|
|
159
|
-
|
|
160
|
-
<h2>📚 你的项目名称</h2>
|
|
161
|
-
</div>
|
|
75
|
+
```bash
|
|
76
|
+
pnpm dev
|
|
162
77
|
```
|
|
163
78
|
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
### 自定义样式
|
|
167
|
-
|
|
168
|
-
编辑 `src/style.css` 文件,可以修改颜色、字体、间距等样式。
|
|
79
|
+
访问 http://localhost:3000,修改代码后自动热更新。
|
|
169
80
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
### 静态部署
|
|
173
|
-
|
|
174
|
-
构建后将 `dist` 目录部署到任何静态服务器:
|
|
81
|
+
### 本地测试 CLI
|
|
175
82
|
|
|
176
83
|
```bash
|
|
177
|
-
|
|
178
|
-
|
|
84
|
+
# 链接到全局
|
|
85
|
+
pnpm link --global
|
|
179
86
|
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
server {
|
|
184
|
-
listen 80;
|
|
185
|
-
server_name your-domain.com;
|
|
186
|
-
root /path/to/dist;
|
|
187
|
-
index index.html;
|
|
188
|
-
|
|
189
|
-
location / {
|
|
190
|
-
try_files $uri $uri/ /index.html;
|
|
191
|
-
}
|
|
192
|
-
}
|
|
87
|
+
# 在任意目录测试
|
|
88
|
+
cd /path/to/test/docs
|
|
89
|
+
md2ui
|
|
193
90
|
```
|
|
194
91
|
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
### 添加新功能
|
|
92
|
+
### 项目结构
|
|
198
93
|
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
## 常见问题
|
|
211
|
-
|
|
212
|
-
### 文档不显示?
|
|
213
|
-
|
|
214
|
-
检查文档路径是否正确,确保文件在 `public/docs/` 目录下。
|
|
215
|
-
|
|
216
|
-
### Mermaid 图表不渲染?
|
|
217
|
-
|
|
218
|
-
确保代码块使用 ` ```mermaid ` 标记,并检查图表语法是否正确。
|
|
94
|
+
```
|
|
95
|
+
md2ui/
|
|
96
|
+
├── bin/md2ui.js # CLI 入口
|
|
97
|
+
├── src/
|
|
98
|
+
│ ├── App.vue # 主组件
|
|
99
|
+
│ ├── api/docs.js # 文档列表获取
|
|
100
|
+
│ ├── components/ # Vue 组件
|
|
101
|
+
│ └── composables/ # 组合式函数
|
|
102
|
+
├── public/docs/ # 示例文档
|
|
103
|
+
└── vite.config.js # Vite 配置
|
|
104
|
+
```
|
|
219
105
|
|
|
220
|
-
###
|
|
106
|
+
### 发布新版本
|
|
221
107
|
|
|
222
|
-
|
|
108
|
+
参考 [发布文档](docs/发布到%20npm%20仓库.md)
|
|
223
109
|
|
|
224
110
|
## 许可证
|
|
225
111
|
|
|
226
112
|
MIT License
|
|
227
|
-
|
|
228
|
-
## 贡献
|
|
229
|
-
|
|
230
|
-
欢迎提交 Issue 和 Pull Request!
|
package/bin/md2ui.js
CHANGED
|
@@ -15,11 +15,11 @@ const userDir = process.cwd()
|
|
|
15
15
|
|
|
16
16
|
// 解析命令行参数
|
|
17
17
|
const args = process.argv.slice(2)
|
|
18
|
-
let port =
|
|
18
|
+
let port = 3000
|
|
19
19
|
|
|
20
20
|
for (let i = 0; i < args.length; i++) {
|
|
21
21
|
if (args[i] === '-p' || args[i] === '--port') {
|
|
22
|
-
port = parseInt(args[i + 1]) ||
|
|
22
|
+
port = parseInt(args[i + 1]) || 3000
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
|
package/package.json
CHANGED
package/src/style.css
CHANGED