最近无意中发现,Google 的 Material Design Web Components 项目又被放弃了。为什么说”又“呢?因为之前有个 Material Components Web 也是被放弃了。这也意味着 Material Design 从发布至今,根本没有一个...
最近将 Geeknote 的图片处理换到了 imgproxy,记录一下过程。
Importmap-rails 默认的加载来源是 CDN,但是公共 CDN 在国内访问不稳定。另一个方法是将 JavaScript 下载到 vender/javascript 目录,但是这个方法需要将外部 JavaScript 签入源码管理工具,导致源码体积变大。
原合集功能借鉴了 YouTube 的 playlist 功能,通过设置公开或者私有同时承担了收藏和分享的功能。经过观察,在实际使用中合集功能主要作用还是收藏,分享功能并不实用。
SaaS 支持客户子域名和自定义域名是很常见的需求。Caddy 是一个支持自动申请 HTTPS 证书的 Web server。最近用 Caddy 实现了子域名和自定义域名的自动 HTTPS 配置,记录如下以供参考。
写 Web 应用的时候,经常需要写这样的 HTML 片段:
最近在 Fly.io 部署了一个 Meilisearch,记录一下过程。
今天 GeekNote 上线了一些设计更新,本文列出有什么变化以及背后的思考。
Tailwind CSS 是一个实用类优先的 CSS 框架。跟其他 CSS 框架的主要不同是它不提供组件层面的样式,而是全部都是实用类。我之前写过一个简单的介绍:Tailwind CSS 浅析。
最近 GeekNote 发现了一个 Bug,所有未登录用户在访问文章页面时会跳转到登陆页面。这看起来就像那些封闭花园式的发布平台那样,导致流失了很多潜在用户。
现在社交网络一般都支持网站设置预览图,有预览图的网页能更占据更大的展示空间,提高点击率。
上个月某一天,GeekNote 的 Cloudflare 代理提示 Error 526。Error 526 是指 CloudFlare 的节点无法验证源服务的 SSL 证书。相关文档如下:
在上一次的 UI 改动中,编辑界面改得像个论坛编辑器,这收到了一些负面的反馈,认为编辑体验倒退了,我觉得说得有道理。GeekNote 的长期目标是建立一个写作社区,但它首先应该是一个体验良好的写作工具,所以现在编辑器改回了以往的全屏沉浸式界面:
最近我用 Postal 搭建了一个邮件服务器,体验比想象中更好,迫不及待分享一下经验。
GeekNote 本周五开始将发送每周摘要邮件,内容为最近一周的热门文章。希望每周摘要能让优秀的文章被更多人发现。
最近有人反馈 GeekNote 的注册流程体验很差(#23),我调试之后发现之前集成 reCAPTCHA 的代码有错,会导致验证经常失败。解决的过程记录如下。
现在搭建一个博客非常容易,但是很少有人关注技术博客应该怎么写。
在实现 UI 组件的时候,有时候需要借助 JavaScript 实现状态触发,例如 Dropdown,Dialog。在我自用的 Material UI 库中,之前是借助 Stimulus 框架实现的,它的 HTML 内容是这样:
转眼间,GeekNote 已经开放一周年了。在这一年间,网站获得了 935 名注册用户和 264 篇发表的文章。
前天惊闻 GitHub 宣布将于年底封存 Atom 编辑器,也就是正式放弃了这个项目,我一时间思绪万千。