首页 / 日志

LOG

星空日志

把取舍写下来,比把功能列出来有用。

发布记录与工程手记:这套站点是怎么一版版长出来的。共 8 篇 —— 每一篇都是当时真实的取舍,包括踩坏的那些。

想订阅?RSS 订阅源(feed.xml,全站通用阅读器都能收)。

PWA 不是加个 manifest 就完事

manifest 的 scope 写错会装出别人的首页;缓存策略要按导航、静态资源、SW 自身分三类;skipWaiting 会刷掉用户正在写的内容。

读这篇 →

浅色主题不是把滤镜反过来

浅色主题不是反转颜色:对比度要重新算,组件要有自己的浅色规则,工具箱这种「另写一套样式」的地方最容易漏掉主题。

读这篇 →

三十个工具怎么保证不是摆设

工具箱第一版有十一个工具,其中三个有 bug:进制转换会把 1.5 当整数、颜色框每次输入都被回写吞掉、JSON 复制多带一行提示语。 现在的做法是给纯函数写用例:从 tools.js 里按大括号配对抽出真实函数,跑 2

读这篇 →

为什么把整个生态做成静态站

最早这四个仓各写各的,样式重复三份,版本号写死在 HTML 里,Releases 上明明只有 v1.0.0,页面却写 v4.0.2。 改法很朴素:样式抽成一套 token,版本号只从 Releases API 读,读不到

读这篇 →

CI 抓到的一次真实事故

工具站的检查工作流提交后一直不跑,Actions 里连一条 run 都没有。原因是文件被 PowerShell 写成了 GBK,GitHub 解析不出 YAML 结构,于是悄悄忽略了它。 教训写进了决策日志:仓库里的文件

读这篇 →

十个应用共用一条底线

软件库的十个应用都遵守同一条底线:数据只在浏览器里、没有账号、没有埋点、断网可用。 加密类用 WebCrypto(PBKDF2 十五万轮 + AES-GCM),媒体类用 Canvas 与 MediaRecorder,记录

读这篇 →

这里写的是「为什么这么改」,不是变更清单。逐版变更在 更新日志;数字在 生态数据。