使用 Node.js 开发的项目目录管理工具,能够将项目内文件结构自动映射并生成为 README.md | A project directory management tool, which helps you to map the file structure inside a project to README.md
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
utils
.gitignore
LICENSE
README.md
example.gif
index.js
package.json
yuki.config.json

README.md

yuki

使用 Node.js 开发的项目目录管理工具,能够将项目内文件结构自动映射并生成为 README.md

Author Version License

License

适用场合

当一份 README.md 的主体内容是项目目录,而你又厌倦了每次增加、修改、删除项目中文件时都要对 README 进行维护,那么不妨试试 yuki!

它可以在极短时间内帮你生成符合要求的 README.md 文档。你更可以通过配置一份 yuki.config.json 来满足你的以下需求:

  • 固定文档标题
  • 目录前后增加固定内容
  • 映射时忽略指定文件夹、文件、扩展名
  • 根据指定扩展名选择是否去掉文件名的扩展名或加上书名号
  • 让每个文件都带上 Github 的链接以方便在线跳转查看

你可以用 yuki 帮助你轻松维护 github 上类似博客、笔记、代码汇总等项目!

效果示例

我的每天一题 LeetCode项目的 README.md 完全通过 yuki 生成。你可以点击以查看效果。

使用方法

请确认你使用的电脑有 Node 环境,越新越好。

安装 yuki

npm install -g yuki

进入需要生成 README.md 的文件夹

# 请将 <dirname> 换为文件夹路径
cd <dirname>

创建 yuki.config.json(可选)

touch yuki.config.json

配置 yuki.config.json(可选)

{
  // README.md的大标题(h1),默认为所在文件夹名
  "title": "《算法(第4版)》笔记及代码",
  // github库地址,如果配置了这项会给每个文件加上超链接
  // 如果配置,请保证index填写无误,且所有文件名不含空格(否则链接无法正确表示)
  // branch默认为master
  "repository": {
    "index": "https://github.com/bighuang624/Algorithms-notes",
    "branch": "master"
  },
  // 目录开始的标题等级
  // 默认为2,即该目录下的文件夹名等级从3开始,随层级深入递减
  "startLevel": 2,
  // 需要忽略的目录、扩展名和文件,都以数组表示
  "ignore": {
    "dir": [".git"],
    "extname": [".json"],
    "file": [
      "yuki.config.json",
      ".gitignore",
      "README.md",
      ".DS_Store"
    ]
  },
  // 根据扩展名选择对展示的文件名做一些处理
  // 每个扩展名的配置需要单独一个对象
  // 目前支持省略扩展名"withoutExt": true
  // 和加上书名号"withBookmark": true
  "format": [
    {
      "extname": ".md",
      "withoutExt": true,
      "withBookmark": true
    }
  ],
  // 在大标题之后,目录之前添加的内容
  // 每个对象可选择包含标题、标题等级和内容
  // 其中,标题和标题等级需在一个对象中一同填写
  "prefix": [
    {
      "content": "[![作者](https:\//img.shields.io\/badge/%E4%BD%9C%E8%80%85-KyonHuang-7AD6FD.svg)](http:\//kyonhuang.top)"
    }, {
      "title": "目录",
      "level": 2
    }
  ],
  // 在README.md末尾添加的内容
  // 和prefix相同,每个对象可选择包含标题、标题等级和内容
  "append": [
    {
      "title": "维护",
      "level": 2,
      "content": "本文档由 [yuki](https://github.com/bighuang624/yuki) 维护"
    }
  ]
}

因为 JSON 标准中不含注释,请在使用时将注释去掉。本项目中也提供一份不带注释、可供修改使用的 yuki.config.json 模版。

不需要的配置选项请全部删除。

创建 README.md

yuki

注意事项

  • 生成的文档中文件和文件夹按照名称顺序排列
  • 如果你觉得这个小工具还不错,或者使用时觉得很方便、减轻了重复的工作负担,那么不妨点一个 star 作为鼓励
  • 欢迎开 issue 或者提交 PR

LICENSE

Apache License 2.0