我们可以在项目的根目录创建 .pressify
目录,在这里面可以新建 config.js
或 config.ts
文件作为配置文件。我们的项目目录结构可能是这样的:
<root>
├─ .pressify
│ └─ config.js
├─ docs
│ └─ index.md
└─ package.json
<root>
├─ .pressify
│ └─ config.js
├─ docs
│ └─ index.md
└─ package.json
// <root>/.pressify/config.js
export default {
// ....
};
// <root>/.pressify/config.js
export default {
// ....
};
如果要获得类型提示,可以从 pressify
中导入 defineConfig
方法:
import { defineConfig } from 'pressify';
export default defineConfig({
// ...
});
import { defineConfig } from 'pressify';
export default defineConfig({
// ...
});
通过 themeConfig
字段配置主题,例如:
export default {
themeConfig: {
title: 'My App',
},
};
export default {
themeConfig: {
title: 'My App',
},
};
themeConfig
可配置的内容是由使用的主题来决定的。不同主题往往对应着不同的配置项。
默认情况下 Pressify 会扫描 docs
目录下特定后缀的文件作为文档内容,并以此生成路由规则。后缀列表:
.md
、.mdx
、.js
、.jsx
、.ts
、.tsx
。
如果想修改目录或修改扫描规则,可以设置 pages
字段,例如:
export default {
pages: 'content', // 指定 content 为文档目录
};
export default {
pages: 'content', // 指定 content 为文档目录
};
Pressify 的路由能力来自于 vite-plugin-conventional-routes
,详细的 pages
配置可以看该插件的文档。
可以通过 ignore
字段忽略扫描特定的文件,例如:
export default {
ignore: 'test.mdx', // 忽略 test.mdx 文件
};
export default {
ignore: 'test.mdx', // 忽略 test.mdx 文件
};
是否使用 Hash 路由。
默认情况下,Pressify 会读取项目里的 vite 配置文件,如:vite.config.ts
,具体读取规则参考 vite 官方文档。
如果我们想自定义 Pressify 的 vite 配置,可以通过 vite
字段来修改 Vite 的配置,例如:
export default {
vite: {
base: '/app/',
outDir: 'output',
plugins: [],
},
};
export default {
vite: {
base: '/app/',
outDir: 'output',
plugins: [],
},
};
如果在这里自定义了 vite 配置,则不会再读取项目里的 vite 配置文件了。
@vitejs/plugin-react 的配置。
配置 mdx,例如:
export default {
mdx: {
remarkPlugins: [require('remark-toc')],
rehypePlugins: [],
theme: 'material-palenight', // 设置 shiki 语法高亮主题
},
};
export default {
mdx: {
remarkPlugins: [require('remark-toc')],
rehypePlugins: [],
theme: 'material-palenight', // 设置 shiki 语法高亮主题
},
};
Pressify 的语法高亮能力来自于 shiki。
默认情况下 Pressify 会读取项目根目录下的 tailwind.config.js
内容作为 tailwind 的配置。
如果想使用别的文件作为 tailwind 配置文件,可以给 tailwind
传递一个字符串:
export default {
tailwind: 'my-tailwind.config.js',
};
export default {
tailwind: 'my-tailwind.config.js',
};
也可以直接在这个字段里写配置内容,例如:
export default {
tailwind: {
theme: {
extend: {
colors: {
primary: '#3eaf7c',
},
},
},
},
};
export default {
tailwind: {
theme: {
extend: {
colors: {
primary: '#3eaf7c',
},
},
},
},
};
unplugin-icons 的配置项。