This is early WIP!
配置

配置

我们可以在项目的根目录创建 .pressify 目录,在这里面可以新建 config.jsconfig.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

通过 themeConfig 字段配置主题,例如:

export default {
  themeConfig: {
    title: 'My App',
  },
};
export default {
  themeConfig: {
    title: 'My App',
  },
};
INFO

themeConfig 可配置的内容是由使用的主题来决定的。不同主题往往对应着不同的配置项。

pages

默认情况下 Pressify 会扫描 docs 目录下特定后缀的文件作为文档内容,并以此生成路由规则。后缀列表: .md.mdx.js.jsx.ts.tsx

如果想修改目录或修改扫描规则,可以设置 pages 字段,例如:

export default {
  pages: 'content', // 指定 content 为文档目录
};
export default {
  pages: 'content', // 指定 content 为文档目录
};
INFO

Pressify 的路由能力来自于 vite-plugin-conventional-routes,详细的 pages 配置可以看该插件的文档

ignore

可以通过 ignore 字段忽略扫描特定的文件,例如:

export default {
  ignore: 'test.mdx', // 忽略 test.mdx 文件
};
export default {
  ignore: 'test.mdx', // 忽略 test.mdx 文件
};

useHashRouter

是否使用 Hash 路由。

vite

默认情况下,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: [],
  },
};
WARNING

如果在这里自定义了 vite 配置,则不会再读取项目里的 vite 配置文件了。

react

@vitejs/plugin-react 的配置。

mdx

配置 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 语法高亮主题
  },
};
INFO

Pressify 的语法高亮能力来自于 shiki

tailwind

默认情况下 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',
        },
      },
    },
  },
};

icons

unplugin-icons 的配置项。