九天两千八百颗星,一个做小红书图文的开源项目就这么悄没声地炸了,我刷到的时候还没反应过来,点进GitHub一看,5月27号建仓,到今天2878 star,fork 268。这增速放到任何一个赛道都算爆了,何况是做「小红书图文生成」这么垂直的玩意儿,HTML类项目能上Trending本身就少见,通常前排都是Rust、Python、TypeScript那些主流语言的项目,一个HTML仓库挤进去还挺扎眼的,连TypeScript都没用,纯HTML加CSS加几行JS。
项目叫guizang-social-card-skill,作者郭浩,ID是op7418,他之前做了guizang-ppt-skill,一万五千颗星,四月份冲上Trending那个,现在social-card走独立仓库维护,视觉风格跟PPT版有一些延续但定位完全不同,PPT版做演示文稿,这版专门解决社交媒体图文卡片,郭浩这个人挺有意思,他做的几个开源项目都卡在AI工具链的某个具体痛点上,PPT版解决演示文稿,social-card版解决社交媒体图文,都是同一个思路,把设计规范代码化然后让Agent调用,不追求大而全,一个项目吃透一个场景,路径很清晰。你给它一篇文案或者几个产品笔记配几张照片,它直接吐出一套3:4竖版小红书卡片,公众号21:9头图加1:1分享封面对也能出,输出格式是单文件HTML,Playwright渲染出来就是PNG,不用构建。不用装依赖。不需要Node项目骨架。完整工作流从输入文案到输出卡片图片全自动跑通。整个链条里没有任何手动步骤,链路干净,没有中间产物需要人工干预。基本上你只要喂内容剩下的它全包了。你把markdown丢进去,它把HTML写好,Playwright截成PNG,一套卡片直接到手。项目5月27号创建,到6月4号2878星,日均三百多,八天近三千颗星,这个增速在HTML分类里很少见,同时间段Trending HTML分类里排它前面的一个是用Rust写的终端工具,一个是Python的ML框架。
我头回看到HTML渲PNG这条路子的时候愣了一下,做图片生成不都是Pillow和Canvas这些图像库么,细想确实对,CSS Grid做版式比Pillow算像素坐标省事太多,字号行高字重直接写CSS属性就行,留白和对齐在CSS里是一等公民不像在图像库里你得自己算像素偏移,HTML纯文本格式Agent写完一键出图中间零损耗。项目还带validate-social-deck.mjs校验脚本,Playwright跑DOM真实测量,哪张卡片哪个元素溢出了字号超限了内容压到footer了,一条命令全报出来行号附带实际渲染尺寸,比肉眼扫靠谱得多。校验这块其实很容易被忽略,图片生成出来有没有溢出有没有遮挡,人眼检查效率很低,自动化校验把所有版式骨架都跑一遍,保障输出质量稳定。让Agent调图像库或者API写坐标是额外负担。写HTML是本职工作。写完直接渲染零转换损耗。这是整个项目能被稳定调用的地基,也是我觉得技术选型关键的地方,选HTML不只是因为方便,是因为它是Agent能力模型里输出质量顶好的格式,你让一个语言模型写Pillow代码和写HTML代码,后者的准确率和完成度碾压前者,这是由模型训练数据分布决定的,互联网上HTML样本比Pillow样本多几个数量级。
视觉分两套主题共用一份工作流,Editorial和Swiss。Editorial走电子杂志那一路,Monocle和Kinfolk那个调子,留白多衬线体多用字克制,适合偏叙事类的内容,生活方式旅行阅读这类东西,版式骨架有全出血大图加叠文型的,有两栏图文混排的,有引言加正文加引注的三段式的,都是纸质杂志做了一百年的经典骨架。Swiss走另一路,网格加锚点色字号对比拉得很开信息密度高,偏产品和数据教程用的,你看那些产品对比出来的一页三栏数据表,就是Swiss的典型输出。Swiss这套版式我跑了一下产品评测的文案,三栏数据表加锚点色标题,确实像专业设计师出的,不是程序员凑出来的那种居中加大字号。28个版式骨架,Editorial占16个Swiss 12个,10套预设色板各有名字,Kinfolk偏米白配深棕,Neon走黑底荧光色,Earth是大地色系,不能改hex值只能在10个里选,这约束其实挺大胆的,开源项目敢限用户自由的很少见,但你用了就理解为什么,自由选色出来的东西真没法看。一个写代码的人把颜色锁死不让用户改,open一下Canva的自由选色你大概就懂了,恨不得把彩虹搬上去。GitHub搜xiaohongshu card,Ant-Card 80星RedBookCards 34星,文转卡片功能大同小异,Ant-Card版式就两三种没有色板预设字号间距全靠用户调,guizang这边28个版式10个色板两套字体间距规范,版式命名都带着设计术语,typographic-lockup、full-bleed-spread,Ant-Card就叫template-1、template-2,做没做过平面设计一看便知。
11个品类分三档,旅行职场推荐类全链路搞定,游戏影视美食食谱彩妆教程健身家居文案能出配图得自己喂,OOTD仿胶片调色直接说不接。我跑了旅行和读书笔记两个品类,旅行配Unsplash的街景图出了一套完整的五张卡片,效果直接能用,版式选的是Editorial的full-bleed-spread,大图叠文字那种,出来之后不用再调。读书笔记纯文字版稍显单调,但也比自己排版省事。美食品类纯文字跑出来确实差点意思,喂几张食物照片之后立刻好了一个档次,这也验证了项目自己的分类逻辑,文字能搞定的它搞定,搞不动的老老实实告诉你得自己配图,这也是为什么项目自己把美食归到第二档,文案行但图得你来。
踩中了Claude Code Skill这个生态位。PPT skill一万五千星验证过路径可行,social-card姊妹项目赶上小红书图文需求这半年爆发,Canva拼图和请设计师的老路扛不住了,文案不卡了瓶颈挪到文转图,guizang在开源免费区间暂时没人抢。Canva和美图秀秀能做类似的事,但闭源收费不走Agent工作流,开发者没法把它们的流程嵌入自己的自动化管线里,对于想搞自动化的开发者来说实用性打了折扣。它的Skill文件大概三百行,Claude Code加载完就知道markdown怎么转HTML卡片怎么调Playwright截图,不需要你补任何指令,连Prompt都不用优化。整个过程大概十秒出图,比Canva手动拼快了一个数量级,markdown文本进去,一套3:4竖版卡片PNG出来,中间没有需要人工确认的环节。许可证当天从MIT自定义条款换AGPL-3.0,作者说自己拟的条款没过法律审查上了法庭可能废纸一张,PPT版一万五颗星一直没动许可证,social-card首日就换,一天之内做了决定,大概预判会再爆一轮提前锁闭环,这个判断力挺强的,换别的开发者可能先用MIT观望一阵。SaaS公司看到AGPL大概率绕道,但凡碰一点网络交互就得公开衍生代码,但对于独立开发者来说取舍很清楚,PPT版用MIT人家拿去闭源卖钱你一点办法没有,AGPL直接堵死这条路,用了我的代码就得公开你的,简单粗暴但有效。Issues里两点,满铺图文字默认黑色深背景看不见,有人提了PR在改,方案是加text-shadow加自动检测背景亮度,下个版本应该修掉。纯文字输出单调触及能力边界,排版引擎只管排版,图得你自己喂,它不会帮你爬pinterest,这块得自己想办法,Unsplash可以凑合用但不是所有品类都有好图。
做内容的都遇到过这个效率黑洞,写一篇公众号两小时,配一套小红书图文四小时,大半时间耗在挪文字调间距换配色这些零碎活上。guizang把这些体力活自动跑了,你选一个版式一个色板就出图,以前五张图微调四十次,现在点两下,省下来的时间够你再写一篇,效率差距不是一点半点。九天两千八百颗星,需求攒了一阵子,guizang赶上窗口期接住了,建仓五天就上了GitHub Trending,代码开源免费,视觉完成度又很高,这种组合在开源项目里不多见,感兴趣可以去试试,至少能帮你省掉排版那四小时里的大部分体力活。
以上,既然看到这里了,如果觉得不错,随手点个赞,在看,转发三连吧,如果想尽早收到推送,也可以给我个星标⭐~
谢谢你的阅读,下次再见。
来源
- [guizang-social-card-skill GitHub 仓库] , github.com/op7418/guizang-social-card-skill,2026-05-27
- [guizang-ppt-skill GitHub 仓库] , github.com/op7418/guizang-ppt-skill,2026-04-23
- [GitHub Issues #1 #3] , 满铺图文字不可读、纯文字单调反馈,2026-06
作者 AISet
