网络中的产品
每个产品都有自己的域名、自己的用途和自己的受众。共享的只有技术底座,别无其他。
ZKYSolutions
网页工作室
工作室的官网,也是其余一切的出处:客户区、自研的身份验证、六种语言、收紧过的安全响应头。
ZKYMessenger
即时通讯
把 2005 年的即时通讯搬回浏览器:窗口、状态、抖动、用键盘打出的表情。在那里说过的话,一句都不保存。
ZKYBlog
博客平台
像 2005 年那样写博客:人人开一个,自己装扮,发文,收获评论和点赞。附带目录、榜单和标签搜索。
Screenwar
实时应用
一块永不滚动的屏幕:每个方块既是三个字母的代号,也是共同奖池里的一份。每一次下注都会当场为所有人重画整块棋盘。
100seats
实时应用
一百个带排名的座位,一美元买三次转动。名次由抽签决定,从不由下注多少决定,抽中的名次会把原来坐着的人挤走。
iDonkey
增量游戏
一个像 2003 年那样的文件共享客户端,只是永远下载不完。缓慢前进的进度条本身就是产品:你赢得名次,付出的是在场时间。
Jeecei
手机应用
短暂存在的群组地图,端到端加密,无需账号。当场扫二维码加入,会话自动到期,之后什么都不留下。
ZKYFullShot
浏览器扩展
把整张网页从头到尾截下来,再导出为 PNG、JPG 或 PDF。已从 Chrome 应用商店下架的 GoFullPage 的自由替代品。
一个底座,所有产品
在一个产品的生产环境里被验证过的东西,就拿去用在下一个上。同样的东西不写两遍,也不向那些出故障时我们无能为力的服务借力。
Nuxt 4,服务端渲染
Vue 3 配 SSR,不做静态生成:服务端路由持续运行。
MariaDB,手写 SQL
不用 ORM,迁移脚本编号且从不重放,各处使用同一种排序规则。
自研身份验证
可吊销的不透明令牌、scrypt、TOTP 双因素。不用 JWT,不用魔法链接。
实时
访客之间共享状态,不依赖第三方服务:Screenwar 和 100seats 靠的就是这个。
多语言
工作室官网提供六种语言,少一个键就不会进入构建。
自己掌控的托管
独立服务器、PM2、不用任何原生二进制。构建产物来自开发机,绝不来自服务器。