数字时钟设计合集
文章摘要
clocks.dev 是一个专门收集”数字时钟设计”的在线画廊,把各式各样富有创意的报时方式集中呈现,每一个都是可以实时运行、真正在走的时钟。站点本身是一个客户端渲染的单页应用,配有一个用于社区提交作品审核的沙箱环境(sandbox.clocks.dev),并向创作者开放了一套构建时钟的 API/接口,让人可以贡献自己设计的钟面。
从 HN 讨论中提及的众多具体作品,可以一窥合集的想象力有多丰富。比如 “Number Field”(数字场)用 12 列的空间化布局排列数字,被认为是最能让人一眼估读出时间的设计;”Word Field”(文字场)脱胎于经典的”文字时钟”,用浮现的单词拼出当前时间;”Temporal Exposure”(时间曝光)用模糊的光带表现时间流逝;还有仿 iPhone 锁屏的 “Lock Screen”、带指针的 “Figure Hands”、二进制时钟,以及广受好评、还原得相当到位的瑞士铁路钟(Swiss railway clock)。这些设计大多以 SVG + JavaScript 实现——这也是站点的一条隐性门槛:有评论者提到自己用 CSS 动画做的作品无法被收录,暗示合集要求以脚本驱动的方式构建时钟,以便统一在沙箱里审核与运行。
总的来说,这是一个典型的”HN 极客趣味”项目:它不追求实用,而是把”如何表示时间”当作一道开放式的设计与编程命题,邀请人们各显神通。对喜欢摆弄前端、玩 SVG 动画或纯粹热爱钟表美学的人来说,它既是灵感库,也是一个可以贡献自己作品的舞台。由于原站是纯前端 SPA,本文的具体作品细节主要依据 HN 讨论中被点名的钟面整理。
HN 评论精华
评论区变成了 HN 时钟爱好者们的”晒作品大会”,同时也有人认真挑刺具体设计的正确性。
- skippyfish 贡献了最细致的挑错:他指出橙色的 “Number Field” 钟无法区分 12:10 和 10:12;”Word Field” 用 “X” 填充未用字符,反而削弱了原版”文字时钟”里单词逐渐浮现的神秘感;”Temporal Exposure” 模糊区域的光带有奇怪的偏心;”Figure Hands” 的文字还溢出了绘图区。
- rsamtravis 则揪出了二进制时钟的逻辑 bug:它似乎把 8 位左边那一位当成了”十位”而非正常的”16 位”,导致 10 点显示成 “00010000” 而不是 “1010”,晚上 11 点(2300)显示成 “00100011”(换算过来是 35 点),并困惑地在评论里求解释。
- kqr 和 throw0101d 都在”求而不得”:kqr 惊讶地发现合集里竟然没有一个 24 小时制的模拟钟面,这反倒成了他坚持随身带智能手表的理由;throw0101d 则希望能有一个模拟表盘用在 iPhone 锁屏上。
- vunderba 提议干脆给 HN 上的时钟爱好者们建个复古”网站环”(webring),并晒出自己会用水从底部灌满空心数字来表示秒数的 “Filling Digit”(灌注数字)时钟,还翻出曾在 HN 走红的 “Alphabetical Clock”。toddmorey(做了个日式算盘 Soroban 时钟)、atulvi、72mena(AI 热潮前手工用 SVG 做的一批表盘)等人也纷纷贴出自己的作品请求收录。
- Theodores 提出一个偏”手艺人”的观点:他不确定要不要学这套 API,因为用 JavaScript 让钟表指针转起来本就不难。他更看重把一个可信的挂钟做到位——记住指针的层叠顺序、加上”Made in China”“Quartz”这类小字和用
pathLength="60"定义的表盘刻度——认为应先做出一个能一眼报时的标准钟,再去玩”炫酷但把设计凌驾于报时之上”的花活。 - diego_moita 泼了盆现实的冷水:这类花哨钟面在 Pebble 手表上他玩过不少,酷是酷,但顶多新鲜一两天,最后他总会回到那种朴素却信息密度高的表盘——带电量、天气、心率、步数。