关于 CodeKit

开发者的日常工具箱

开发工作里全是这种两分钟的小岔路:为了记起解码 JWT 的命令行参数,把 token 贴到终端里跑一遍;为了格式化 JSON、编码 URL、算个哈希,在三个浏览器标签之间来回切;这个月第五次重新发现 PEM 密钥必须按 64 字符换行,否则一半的部署工具会报错。每一件都不难,加起来却很磨人。

CodeKit 就是放在编辑器旁边、专门处理这些岔路的工具箱。开个标签页,选工具,粘贴,复制结果,关掉。不用安装、不用注册,更没有「把密钥贴进来,我们帮你云端处理」这种事。

为什么做 CodeKit

压垮我们的那个下午,是在 Base64 解码器、JWT 查看器、JSON 格式化器和正则测试器之间反复横跳——四个标签、四套界面、四套快捷键,同一个 token 贴了四遍。我们想要一个能容纳整条工作流的地方:上一步的输出直接喂给下一步,不用靠复制粘贴接力。

这个地方最终长成了 27 个工具,按开发者一天的真实节奏分组:

编码与解码 🔤

Base64(含 URL 安全变体)、URL 百分号编码、HTML 实体、十六进制、UTF-8、Unicode 转义、MIME 编码词,以及二/八/十/十六进制转换器。

哈希与加密 🔐

哈希生成器(MD5、SHA-1、SHA-256、SHA-512)、HMAC 签名器、RSA/PEM 密钥格式化器,以及把头部、负载、签名拆开的 JWT 解码器。

开发者工具 🛠️

带捕获组的正则测试器、带下次运行时间的 Cron 解析器、Unix 时间戳转换器、UUID v4/v7 生成器、密码生成器、二维码生成器、颜色转换器、Lorem Ipsum 占位文本和实时 Markdown 预览器。

格式化与转换 📋

JSON、XML、SQL、YAML 格式化器;CSV ↔ JSON、YAML ↔ JSON 转换器;以及一个文本对比工具,用来看两个版本之间到底改了什么。

流水线:把操作串起来

流水线编辑器是让 CodeKit 不止是一堆工具清单的关键。往画布上拖几个步骤——先 Base64 解码,再 URL 解码,最后 JSON 格式化——每一步的输出就是下一步的输入。一个套了三层编码的 token,点一下就摊平了;一个 webhook 的原始报文,不用你来回复制粘贴,直接变成可读的 JSON。

流水线还能分享:把步骤序列化进 URL,发给同事,对方在浏览器里看到的就是一模一样的转换流程。在 Slack 里描述一个五步处理流程,和直接把这个流程本身发过去,是两回事。

敏感数据,本地优先

跑在开发者工具网站上的东西,有一半是敏感的:带用户声明的 JWT、API 密钥、HMAC 密钥、私钥、密码哈希。把这些贴进一个会把数据发到服务器的网站,等于埋下一颗还没响的安全事故。

CodeKit 没有任何会接触你输入的后端。每一次编码、解码、哈希、HMAC,都是在你的浏览器里由你能直接读到的 JavaScript 算出来的。哈希运算放在 Web Worker 里跑,大输入时界面也不会卡,但数据从头到尾不离开这个标签页。你的 token 和密钥始终是你的。

开放标准,不绑定

CodeKit 读写的每一种格式都是有文档的标准——Base64(RFC 4648)、JWT(RFC 7519)、PEM(RFC 7468)、UUID(RFC 4122)、URL 编码(RFC 3986)。没有私有格式,没有存着你历史记录的账号,也没有一旦离开就会丢的云端工作区。哪天你不用 CodeKit 了,用它做出来的东西在任何遵循标准的工具里都照样能用。技术栈是 Astro、Vue 3 和 Tailwind CSS,部署在 Cloudflare Pages。