YAMLResume v0.8 发布:支持 Markdown 输出 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
xiaohanyu
V2EX    分享创造

YAMLResume v0.8 发布:支持 Markdown 输出

  •  
  •   xiaohanyu
    xiaohanyu 9 天前 1195 次点击

    Hello:

    距离前次 YAMLResume 更新 过了两个月,今天带来了 YAMLResume v0.8 ,主要更新是支持多布局/多输出端,特别是对 Markdown 的输出支持。

    [YAMLResume Markdown Output]

    在 YAMLResume v0.7 之前,YAMLResume 的编译流程是线性的:YAML -> LaTeX -> PDF

    PDF 毫无疑问是求职投递的黄金标准,但也有很多局限性:

    1. 对 LLM 不友好:想让 ChatGPT 帮你改简历?把 PDF 复制进去往往格式错乱,
    2. Web 展示不便:想把简历挂在自己的博客( Hugo/Next.js )上?通常只能挂个 PDF 下载链接,或者手写一份 HTML/Markdown ,导致维护两份数据。
    3. 版本对比困难:Git diff 一个二进制 PDF 文件没有任何意义。

    为了解决这些问题,我们在 v0.8 中重构了核心架构,引入了 多布局( Multiple Layouts ) 支持,并首发了 Markdown 输出引擎

    现在,你可以在 resume.yml 中定义多个输出布局。只需运行一次 yamlresume build,就能同时生成 PDF 和 Markdown 文件。

    配置示例:

    layouts: - engine: latex # 传统的 PDF 生成引擎 template: moderncv-banking - engine: markdown # 新的 Markdown 生成引擎 

    Markdown 输出的优势

    1. LLM 友好( Killer Feature ) 这是我们引入 Markdown 的最大动力。生成的 resume.md 结构清晰(标题、列表),是 LLM 的完美输入。 你可以直接把生成的 Markdown 扔给 ChatGPT/Claude:

      • “根据这个 JD ,帮我优化一下我的 resume.md 中的项目描述。”
      • “提取我的技能点,帮我写一封 Cover Letter 。” 效果比直接丢 PDF 好太多。
    2. 自动化个人主页 如果你有基于 Markdown 的博客( Next.js, Hugo, Gatsby 等),现在可以实现自动化流: 改 YAML -> Build -> 自动更新博客的 /about 页面。单一数据源,多处分发。

    3. Git Diffs Markdown 是纯文本。当你修改了一段工作经历,Git diff 会清晰地显示文本变化。这对于 Code Review 简历非常有帮助。

    4. 通用性 有了 Markdown ,你可以通过 Pandoc 轻松转成 Word (.docx)、HTML 或其他任何格式,应付那些强制要求 Word 格式的猎头。

    快速上手

    YAMLResume 基于 Node.js ,支持全平台。

    # 安装 npm install -g yamlresume # 或者使用 Homebrew brew install yamlresume # 初始化一个模版 yamlresume new my-resume.yml # 构建(同时生成 PDF 和 Markdown ) yamlresume build my-resume.yml 

    下一步计划

    我们正在开发 HTML 布局引擎。目标是生成一个单文件、响应式、SEO 友好的 HTML 简历,体验接近 PDF 但原生适配移动端阅读。

    欢迎大家试用并反馈!

    第 1 条附言    9 天前
    补充 YAMLResume 的一些 showcases:

    https://github.com/yamlresume/yamlresume/discussions/50

    不过 Github 上的例子都还是 yamlresume v0.7 的版本,需要把 `layout` 升级 `layouts` 一下。
    6 条回复    2025-12-05 16:44:29 +08:00
    xinyu391
        1
    xinyu391  
       9 天前
    命令行下写简历,小众需求吧
    不能可见即可得,有点开箱盲盒的意思。
    可以做成,左侧编辑,右侧预览的页面应用。
    xiaohanyu
        2
    xiaohanyu  
    OP
       9 天前
    @xinyu391 左侧编辑,右侧预览的功能,有的哈哈

    YAMLResume v0.7 中增加了 dev mode ,这样在 vs code 中,开一个 `npm run dev`,然后左侧编辑,右侧就可以预览生成的 pdf 了,准实时的: https://yamlresume.dev/zh-cn/blog/dev-mode

    当然,非技术人员,可以试试我的商业产品呀: https://ppresume.com
    Razio
        3
    Razio  
       9 天前
    单纯说语法,实在不喜欢 yaml 的语法,不如 toml 清晰可靠
    xiaohanyu
        4
    xiaohanyu  
    OP
       9 天前
    @Razio 我个人对 YAML VS toml 的语法没有特别的倾向,但是 YAML 确实是有一些 edge cases 需要特别注意一下。

    不过对于我的这个场景呢,YAML 的好处在于可以完全复用 JSON schema 的生态,所以可以实现一些比较好用的 auto-completion 自动补全和 validation 数据验证。

    一些 demo: https://yamlresume.dev/zh-cn/blog/yamlresume-compiler

    可以帮助规避一些常见的低级错误,比如非法的 URL/email 这些。
    xiaohanyu
        5
    xiaohanyu  
    OP
       9 天前
    @Razio 不知道 toml 中有没有类似于 JSON schema 的工具?
    MIUIOS
        6
    MIUIOS  
       9 天前
    果然是程序员搞的产品,好重的技术味道
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     790 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 22:15 PVG 06:15 LAX 14:15 JFK 17:15
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86