[{"data":1,"prerenderedAt":217},["ShallowReactive",2],{"page-/post/imgx/imgx-changelog":3,"surrounding-page":208},{"id":4,"title":5,"author":6,"body":7,"date":196,"description":16,"extension":197,"group":6,"lastmod":198,"meta":199,"navigation":200,"path":201,"rawbody":202,"seo":203,"showTitle":6,"stem":204,"tags":205,"versions":6,"__hash__":207},"content/post/imgx/imgx-changelog.md","IMGX 更新动态贴",null,{"type":8,"value":9,"toc":190},"minimark",[10,18,22,33,36,42,45,48,51,54,58,66,69,72,75,94,105,116,123,130,133,143,151,158,168,171,174,177,184,187],[11,12,13],"p",{},[14,15],"img",{"alt":16,"src":17},"","https://img.zzao.club/article/202503121139543.png",[19,20,21],"h2",{"id":21},"回顾",[11,23,24,28,29,32],{},[25,26,27],"code",{},"IMGX","从",[25,30,31],{},"2025-02-08"," 开始建仓库，到现在已经有一个月多一点",[11,34,35],{},"一开始只是为了解决写文章时配图问题，我的要求不高，但AI 生成的很难贴合实际内容。所以还不如直接用一个只有文字的图片，只需要简单排版就好了。",[11,37,38,39],{},"在解决了自己的问题后，我在 v2ex 上分享了 Github 仓库，以及现有的功能，很快收获了近 ",[25,40,41],{},"100 star",[11,43,44],{},"这也算是一次成功的推广吧，在只做了不到 1/4 的功能，就吸引了一批人的注意，说明这个需求还是有很多人需要的。",[11,46,47],{},"所以也是立马花了小一个月的业余时间，用来投入到这个项目上。",[11,49,50],{},"但是这一个月功能没推进多少，因为计划赶不上变化，加班一下子加了两周...",[11,52,53],{},"最近又回归常态后，又可以开始新的规划啦",[19,55,57],{"id":56},"_2025-03-11-新的仓库","2025-03-11 新的仓库",[11,59,60,61,65],{},"在升级到 0.6.0 之后，我的计划是",[62,63,64],"strong",{},"开发一套模板录入+预设保存的机制","，用于解决一大堆参数的问题，保存预设时会得到一个 4(或3)位数的预设码，这个预设码包含了使用哪个模板、使用什么默认样式等信息。",[11,67,68],{},"在使用时只需要携带这个预设码，再传入自己的文字内容即可获得一张图片",[11,70,71],{},"于是我引入了 Prisma、Mysql、Redis，以满足未来的需求。",[11,73,74],{},"但敲了两天代码后，发现现在的项目结构有点别扭。",[11,76,77,78,81,82,85,86,89,90,93],{},"前端功能很少，大部分集中在后端，但又依赖了 ",[25,79,80],{},"createSSRApp"," 和 ",[25,83,84],{},"renderToString","，所以我再调研后决定去除这两个依赖，直接生成 ",[25,87,88],{},"VNode"," 来渲染出 ",[25,91,92],{},"SVG","。",[11,95,96,97,100,101,104],{},"而且这还仅仅是 ",[25,98,99],{},"IMG"," 部分的功能，",[25,102,103],{},"X"," 部分我还没开发，所以为了避免未来代码烂掉。",[11,106,107,108,115],{},"我新开了一个仓库：",[109,110,114],"a",{"href":111,"rel":112},"https://github.com/aatrooox/imgx-nitro",[113],"nofollow","imgx-nitro","，用于继续开发新的 Api 功能。",[11,117,118,119,122],{},"现有的仓库先保留（毕竟有 100 个 star），但暂时不会在这个基础上写新功能了，新的前端仓库也会基于 ",[25,120,121],{},"Vue3"," 再开一个。",[11,124,125,126,129],{},"有开发能力的小伙伴可以自行 ",[25,127,128],{},"Fork"," 本仓库来魔改",[19,131,132],{"id":132},"功能规划",[11,134,135,136,139,140,93],{},"我的规划是这样的：（未来）提供一个入口，可以创建自己的模板（HTML），以及编写自己模板需要的样式（props），我会根据 ",[25,137,138],{},"props","，生成一个 ",[25,141,142],{},"propsSchema",[11,144,145,147,148,150],{},[25,146,142],{}," 会在生成自己的预设时，选择模板后带出来，并且会根据",[25,149,142],{},"来渲染出一个表单，用于配置自己的默认样式",[11,152,153,154,157],{},"然后保存后就会得到一个 code，比如 1234，在使用时通过 ",[25,155,156],{},"GET imgx.zzao.club/1234/这是一段内容 "," 即可快速拿到一个自己常用风格的图片。",[11,159,160,161,28,164,167],{},"当然，这套繁琐的配置只是为了方便",[62,162,163],{},"用户",[62,165,166],{},"前端","去使用。",[11,169,170],{},"真正有价值的还是在后端上。",[11,172,173],{},"比如和其他 Api 配合，抓取内容后输出到图片中",[11,175,176],{},"和插件配合，在浏览器任意网页中生成图片。",[11,178,179,180,183],{},"或是把本地大量的文字、或 md 文件的内容都",[62,181,182],{},"批量","转换成图片",[11,185,186],{},"所以我目前的想法是，先完成核心的 API。",[11,188,189],{},"其他功能到底是以方便普通用户使用，还是先支持开发者自建模板，还是先开发配套插件，就以实际推广后的反馈为准吧",{"title":16,"searchDepth":191,"depth":191,"links":192},2,[193,194,195],{"id":21,"depth":191,"text":21},{"id":56,"depth":191,"text":57},{"id":132,"depth":191,"text":132},"2025-03-11T00:00:00.000Z","md","2025-08-19T00:00:00.000Z",{},true,"/post/imgx/imgx-changelog","---\ntitle: IMGX 更新动态贴\ndate: 2025-03-11\nlastmod: 2025-08-19\ntags: [\"IMGX\", \"Nuxt\"]\n\n---\n![](https://img.zzao.club/article/202503121139543.png)\n## 回顾\n\n`IMGX`从`2025-02-08` 开始建仓库，到现在已经有一个月多一点\n\n一开始只是为了解决写文章时配图问题，我的要求不高，但AI 生成的很难贴合实际内容。所以还不如直接用一个只有文字的图片，只需要简单排版就好了。\n\n在解决了自己的问题后，我在 v2ex 上分享了 Github 仓库，以及现有的功能，很快收获了近 `100 star`\n\n这也算是一次成功的推广吧，在只做了不到 1/4 的功能，就吸引了一批人的注意，说明这个需求还是有很多人需要的。\n\n所以也是立马花了小一个月的业余时间，用来投入到这个项目上。\n\n但是这一个月功能没推进多少，因为计划赶不上变化，加班一下子加了两周...\n\n最近又回归常态后，又可以开始新的规划啦\n\n## 2025-03-11 新的仓库\n\n在升级到 0.6.0 之后，我的计划是**开发一套模板录入+预设保存的机制**，用于解决一大堆参数的问题，保存预设时会得到一个 4(或3)位数的预设码，这个预设码包含了使用哪个模板、使用什么默认样式等信息。\n\n在使用时只需要携带这个预设码，再传入自己的文字内容即可获得一张图片\n\n于是我引入了 Prisma、Mysql、Redis，以满足未来的需求。\n\n但敲了两天代码后，发现现在的项目结构有点别扭。\n\n前端功能很少，大部分集中在后端，但又依赖了 `createSSRApp` 和 `renderToString`，所以我再调研后决定去除这两个依赖，直接生成 `VNode` 来渲染出 `SVG`。\n\n而且这还仅仅是 `IMG` 部分的功能，`X` 部分我还没开发，所以为了避免未来代码烂掉。\n\n我新开了一个仓库：[imgx-nitro](https://github.com/aatrooox/imgx-nitro)，用于继续开发新的 Api 功能。\n\n现有的仓库先保留（毕竟有 100 个 star），但暂时不会在这个基础上写新功能了，新的前端仓库也会基于 `Vue3` 再开一个。\n\n有开发能力的小伙伴可以自行 `Fork` 本仓库来魔改\n\n## 功能规划\n\n我的规划是这样的：（未来）提供一个入口，可以创建自己的模板（HTML），以及编写自己模板需要的样式（props），我会根据 `props`，生成一个 `propsSchema`。\n\n`propsSchema` 会在生成自己的预设时，选择模板后带出来，并且会根据`propsSchema`来渲染出一个表单，用于配置自己的默认样式\n\n然后保存后就会得到一个 code，比如 1234，在使用时通过 `GET imgx.zzao.club/1234/这是一段内容 ` 即可快速拿到一个自己常用风格的图片。\n\n当然，这套繁琐的配置只是为了方便**用户**从**前端**去使用。\n\n真正有价值的还是在后端上。\n\n比如和其他 Api 配合，抓取内容后输出到图片中\n\n和插件配合，在浏览器任意网页中生成图片。\n\n或是把本地大量的文字、或 md 文件的内容都**批量**转换成图片\n\n所以我目前的想法是，先完成核心的 API。\n\n其他功能到底是以方便普通用户使用，还是先支持开发者自建模板，还是先开发配套插件，就以实际推广后的反馈为准吧\n\n\n",{"title":5,"description":16},"post/imgx/imgx-changelog",[27,206],"Nuxt","LZdzu7rzQL67Fw573OIQtirXCw2C4O56q_QhlXFmDzo",[209,213],{"title":210,"path":211,"stem":212},"OpenClaw 安装入门（Windows）","/post/zzao/openclaw/openclaw-install-windows","post/zzao/openclaw/openclaw-install-windows",{"title":214,"path":215,"stem":216},"假设你是AI，你的Skill应该是什么样的","/post/zzao/ai-skill-structure","post/zzao/ai-skill-structure",1779005086006]