2026-08-01 20:56:52
如题 😄 嘿嘿,7月底从 美团 离职了。
前端基本已经不需要古法手搓了,准备转 Agent 方向研究了!
顺便搞点 Agent/AI 相关项目练练手。
家人们有合适的机会也可以推一推。🫶
2026-07-29 17:55:45
笔者维护的 VitePress 博客主题 中包含一个「作品/产品卡片」的能力,可以在 markdown 里通过简单的 ::: card 容器语法快速展示项目。为便于在主题之外复用,将其抽离为独立插件 vitepress-plugin-product-card。
3 步接入:
pnpm add vitepress-plugin-product-card
.vitepress/config.ts 中注册 markdown 容器插件import { defineConfig } from 'vitepress'
import { productCardMarkdownPlugin } from 'vitepress-plugin-product-card'
export default defineConfig({
markdown: {
config(md) {
md.use(productCardMarkdownPlugin, {
showCreated: true, // 默认 true
showUpdated: true // 默认 true
})
}
}
})
.vitepress/theme/index.ts 中注册 Vue 组件import DefaultTheme from 'vitepress/theme'
import { registerProductCard } from 'vitepress-plugin-product-card/client'
export default {
extends: DefaultTheme,
enhanceApp({ app }) {
registerProductCard(app)
}
}
::: card 我的产品
- title: sugar-blog
desc: 简约风的 VitePress 博客主题
icon: 📝
iconColor: '#42b883'
link: https://theme.sugarat.top
github: https://github.com/ATQQ/sugar-blog
tags: [VitePress, Vue3, TypeScript]
----
- title: 另一个项目
desc: 单卡覆盖全局默认
github: https://github.com/some/repo
showCreated: false
:::
::: card 我的产品)可选,不写则不渲染分组标题---- 分隔- title: xxx 开头| 字段 | 类型 | 说明 |
|---|---|---|
title |
string |
卡片标题(必填) |
desc |
string |
卡片描述,支持行内 markdown |
icon |
string |
图标:URL / 相对路径 → 渲染 <img>;否则渲染为字符 |
iconColor |
string |
字符 icon 的背景色 |
link |
string |
点击标题跳转的地址 |
github |
string |
GitHub 仓库地址,自动拉取创建/更新时间 |
tags |
string[] |
标签数组 |
showCreated |
boolean |
覆盖全局,是否展示创建时间 |
showUpdated |
boolean |
覆盖全局,是否展示最后更新时间 |
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
showCreated |
boolean |
true |
全局默认,是否展示创建时间 |
showUpdated |
boolean |
true |
全局默认,是否展示最后更新时间 |
componentName |
string |
ProductCard |
输出 html_block 使用的组件名,与 registerProductCard(app, name) 配合使用 |
@sugarat/theme 中使用
主题内置该插件,直接在文章里用 ::: card 即可。
2026-07-28 17:00:25
为我造过的轮子与写过的项目,书写传记
个人精力有限,感兴趣有能力的朋友可以帮忙迭代维护
2026-06-14 19:00:00
我服务器上有几十个 Web 站点,因为服务器配置较低,都是在本地完成构建后通过 scp 推到服务器,每个项目里就维护了一个 shell 脚本。
大概下面这样:(zx 脚本)
await $`scp ${compressPkgName} ${user}@${fullOrigin}:./`
await $`ssh -p22 ${user}@${fullOrigin} "tar -xf ${compressPkgName} -C ${destDir}"`
这个样子持续了差不多好多年,但始终感觉不优雅,最近刚好 AI 够强,就把一直想实现的一个部署的 CLI 实现了。
服务器只管收 + 解压 + 重启(如果带后端服务)。
于是有了 Kite —— 装一个 CLI 就能跑起 Web 管理端 + Server 后端 + 一键上传。
npm install -g @kitecd/cli
kite serve
启动后浏览器打开 http://127.0.0.1:5431 就是管理后台。
Starting Kite Server...
Runtime: bun v1.3.12
Host: 127.0.0.1
Port: 5431
Web Dir: /Users/sugar/Documents/fe/Kite/packages/cli/dist/web
DB Dir: /Users/sugar/.kite
Admin Token: admin_fb3635137
🦊 Server is running on bun at http://127.0.0.1:5431
🔑 Login Token: admin_fb3635137
线上部署可以通过 pm2,使用 NG 反向代理站点。
kite serve --pm2
只需要录入项目名和部署目即可
项目概览页提供了部署的指令复制即可。
本地项目里执行初始化指令,生成 kite.config.json。
kite init --project proj_669571accfa5 --out ./dist --server http://127.0.0.1:5431 --token kt_a6029f276c354caca86b65960804d22c
{
"projectId": "proj_669571accfa5",
"serverUrl": "http://127.0.0.1:5431",
"outputDir": "./dist",
"files": [
"**/*"
]
}
部署,执行 kite push 即可。
kite push 会自动完成:合并配置 → 打包 outputDir → 上传到 Server → 依次执行 preDeploy / 解压 / postDeploy。
kite push
如果一个项目需要推到多个服务器或者不同项目目录。
会自动扫描符合 kite.config.xx.json 的配置。 kite push --env xx 即可,或者交互式选择。
MiMo 完成了大概 80% 的代码,15% 是 GPT。
这个CLI服务端 支持 Bun 和 Node两个运行时,部分适配靠 GPT 搞定
流程:先使用 plan 模式把需求和实现的核心功能确定下来。
然后拆好 step ,让它挨着执行,然后配合给到的测试用例,验收一下。
然后就是 case by case 的修复问题。
下一个 VibeCoding 的新坑也开好了,猛猛的蹬。
欢迎评论区交流 & 拍砖。
2026-05-06 17:04:53
碎碎念...
本周上班干活的时候,笔记本屏幕直接黑了 GG。最开始我还以为是没电了,结果插上电,重启大法试了一下,屏幕也就只会亮1s。
不过外接显示器能正常用,庆幸核心没搞坏,那 8 成是屏幕相关的问题了,就拿去维修(2周左右要),换了一台旧电脑临时用一下。(公司电脑 💻 (#^.^#))
又得从头来一遍"装机",趁此机会搞个清单,下次就不用对着旧电脑搞了。
看合集直接划到最后😋
状态栏 日历/时间 小组件。平时排期就拿这个看时间。
还有复古的整点报时。
状态栏图标管理工具。
Mac 软件装多了,顶部状态栏里 各种杂七杂八的软件图标,有些不会用到,但占用着很烦。
用这个能方便的管理哪些展示哪些不展示。
都给我去装上 (^▽^)!
简单但强大的截图工具,用了都说好!
支持剪贴板内容转图,截图钉在屏幕上,截图历史回溯,这几个我最常用的功能,。
比较老牌的一个聚合工具平台。
笔者主要就用它内置的 剪贴板 功能,足够简洁,切性能比试用过的其它的专门的剪贴板软件要好。
Arc 浏览器,用习惯了非常方便,支持多端数据同步(不支持插件),支持多身份的设计。竖向的标签排列。
只可惜主创团队,现在不更新功能了,只更新 Chrome 内核版本,转向 Dia 的 AI 浏览器了
不过同事推荐说公司出的这个 AI浏览器也挺好用 Tabbit 浏览器,感兴趣的可以试试
调节显示器亮度,分辨率等非常方便。
日常拿来清理一下垃圾。不然过几天 500G 的盘又满了。
”可爱互动的桌面宠物应用“,基于 Tauri 制作,支持三端!
鼠标和键盘的动作,猫猫都会同步。
赶紧装上,敲键盘又多了一点乐趣
久坐提醒工具。
全屏展示的提醒喝水的软件!。
上班安排起来,给尿喝清亮!
画图神器,工作中拿来画流程图架构图必备。
录屏软件,支持导出多种常用格式,支持基础的编辑。
使用起来非常方便,软件也是开源github:kap的。
聚合翻译软件,速度也快,支持快捷唤起。
Mac,必备,安装软件和各种终端工具。
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
推荐选 Gitee 和 阿里的源。
强大又美观的终端工具,内置 AI 能力集成!
相较于传统的终端工具,其更加智能,编辑指令也非常方便。
笔者主要用这个终端输入提示的功能。
这个功能最早是在 Fig 里,后来被亚马逊收购了。
Mac垃圾清理 & 系统监控软件,开发者友好。
| 系统监控 | node_modules 清理 | 项目统计 |
|---|---|---|
聚合工具平台,笔者主要装了一些开发相关的插件。
代理调试抓包工具!
笔者就常用 TRAE 和 Cursor,自打AI大爆发以来,VS Code 直接不装了。
Node 版本管理工具!
快速切换目录的工具!
npm 镜像源管理。
yrm ls
* npm ---- https://registry.npmjs.org/
cnpm --- http://r.cnpmjs.org/
taobao - https://registry.npmmirror.com/
nj ----- https://registry.nodejitsu.com/
rednpm - http://registry.mirror.cqupt.edu.cn/
npmMirror https://skimdb.npmjs.com/registry/
edunpm - http://registry.enpmjs.org/
yarn --- https://registry.yarnpkg.com
npm i -g @antfu/ni
常用的 ni 装依赖,nr 运行 npm 指令。
使用 killport 可以一步到位,直接杀死占用端口的进程
文件管理软件,可以拿来替代系统默认的 Finder。支持双栏展示,移动和整理文件的时候也比较方便。
多设备之间相互传输文件。足够简单且好用。
| 序号 | 名称 | 介绍 | 链接 |
|---|---|---|---|
| 1 | Itsycal | 状态栏 日历/时间 小组件。平时排期就拿这个看时间。 | https://github.com/sfsam/Itsycal/tree/master |
| 2 | Bartender | 状态栏图标管理工具。 | https://www.macbartender.com/ |
| 3 | Snipaste | 简单但强大的截图工具,用了都说好! | https://www.snipaste.com/ |
| 4 | Alfred | 比较老牌的一个聚合工具平台。 | https://www.alfredapp.com/ |
| 5 | Arc | Arc 浏览器,用习惯了非常方便,支持多端数据同步(不支持插件),支持多身份的设计。竖向的标签排列。 | https://arc.net/ |
| 6 | BetterDisplay | 调节显示器亮度,分辨率等非常方便。 | https://github.com/waydabber/BetterDisplay |
| 7 | Tencent Lemon | 日常拿来清理一下垃圾。不然过几天 500G 的盘又满了。 | https://lemon.qq.com/ |
| 8 | BongoCat | ”可爱互动的桌面宠物应用“,基于 Tauri 制作,支持三端! | https://github.com/ayangweb/BongoCat |
| 9 | HealthTick | 久坐提醒工具。 | https://github.com/lifedever/health-tick-release?tab=readme-ov-file |
| 10 | Shui | 全屏展示的提醒喝水的软件!。 | https://github.com/rock-zhang/Shui |
| 11 | drawio | 画图神器,工作中拿来画流程图架构图必备。 | https://www.drawio.com/ |
| 12 | Kap | 录屏软件,支持导出多种常用格式,支持基础的编辑。 | https://getkap.co/ |
| 13 | Easydict | 聚合翻译软件,速度也快,支持快捷唤起。 | https://github.com/tisfeng/Easydict |
| 14 | Warp | 强大又美观的终端工具,内置 AI 能力集成! | https://www.warp.dev/ |
| 15 | Kiro CLI | 笔者主要用这个终端输入提示的功能。 | https://kiro.dev/downloads/ |
| 16 | EasyDevo | Mac垃圾清理 & 系统监控软件,开发者友好。 | https://easydevo.boringboring.design/ |
| 17 | uTools | 聚合工具平台,笔者主要装了一些开发相关的插件。 | https://www.u-tools.cn/ |
| 18 | Whistle Client | 代理调试抓包工具! | https://github.com/avwo/whistle-client |
| 19 | IDE | 笔者就常用 TRAE 和 Cursor,自打AI大爆发以来,VS Code 直接不装了。 | https://www.trae.ai/https://cursor.com/ |
| 20 | fnm | Node 版本管理工具! | https://github.com/Schniz/fnm |
| 21 | zoxide | 快速切换目录的工具! | https://github.com/ajeetdsouza/zoxide |
| 22 | yrm | npm 镜像源管理。 | https://github.com/i5ting/yrm |
| 23 | ni | 常用的 ni 装依赖,nr 运行 npm 指令。 |
https://github.com/antfu-collective/ni |
| 24 | killport | 使用 killport 可以一步到位,直接杀死占用端口的进程 | https://github.com/jkfran/killport |
| 25 | Marta | 文件管理软件,可以拿来替代系统默认的 Finder。支持双栏展示,移动和整理文件的时候也比较方便。 | https://marta.sh/ |
| 26 | LocalSend | 多设备之间相互传输文件。足够简单且好用。 | https://localsend.org/#/download |
2026-04-18 15:50:17
主题在近几年集成了非常的多功能了,如 通知消息,公告,评论,图片预览,阅读时间分析 等等基础功能,有许多的用户反馈说能不能把这些能力独立成插件,以便于集成进现有的文档站中。
当然我自己也一直有这个想法,于是便有了这个文章来记录一下这个过程,同时抛出&探讨一些问题。
3 步走:
插件开发模板:vitepress-plugin-slot-inject-template:适用基于默认 Layout 拓展的场景
原理见:插件模板介绍
VitePress 图片预览插件,样式参考 Element Plus Image Viewer。
如果读者有其它建议或者想法可以私信或评论区交流。