我正在尝试尽可能地将这个网站的托管整合到我的云 Kubernetes 集群上。今天,我将网站上提供贴纸的部分移至 Kubernetes 集群中。我想看看我能做到多小。事实证明,它可能比我想象的要小得多。
在此过程中,我发现了如何在不臃肿的情况下获得 Tailwind 的所有优势。我称之为 CSSWind,它是继罐装面包之后最好的东西。
以下是 Tailwind 组件的示例:
你是否曾经决定用连走来让自己看起来更像?
Tailwind 使您可以使用类名内联设计组件的样式。这最终会产生像这样的巨型chungus怪物:
呃。课程太多,我根本无法思考。
更糟糕的是,为了将 Tailwind 添加到我的简单 Go 服务中,我必须对它们进行修改,并强制 Tailwind 与go generate
混合在一起。每次我这样做的时候,我都会想“如果我能只写 CSS 肯定会更简单,对吗?”
是的,你可以。下面是 CSSWind 中 Tailwind 组件在语义上相同的版本:
<咪咪> 你有没有曾经决定用偶去想做的更像一些?
这是该内容的 HTML:
<咪咪> 你有没有曾经决定用偶去想做的更像一些?
这为您提供了 Tailwind 的所有优势,而没有任何臃肿、从 NPM 或其他任何地方安装东西。它甚至可以与Xess一起使用!
作为实践中多么简单的一个例子,这是我在处理此问题时制作的贴纸测试页面:
这是使用<iframe>
标记嵌入到另一个页面的实际网站。您可以输入角色和情绪名称,然后查看贴纸单独以及对话片段的样子。这是我测试一切看起来不错并且没有 404 错误所需的一切。
我原本打算使用 HTMX,但即使这样也太臃肿了。我最终使用了普通的HTML 表单,因为这就是我所需要的。当您在该 iframe 中点击“提交”时,页面会重新加载,并且服务器会使用新的 HTML 进行响应。这就是你所需要的。再多就是臃肿。
哦还有,当找不到贴纸时会出现“错误图像”。我必须将其设置为图像,因为如果在浏览器需要图像时将其设置为文本,事情会变得悲伤,并且您会得到一个损坏的图片图标。我宁愿拥有自己品牌的破损图片图标,也不愿拥有一些令人悲伤的浏览器默认图标,因为它会导致用户体验很差。
出于好奇,我用 Image Playground 做了这个,想看看我是否真的能以任何方式从中得到一些有用的东西。看到这是第一个输出,我真的很惊讶:
我的提示是“x,无符号,白色背景,简单背景”。我本以为会浪费时间,然后自己在 Affinty 中制作,但这完全可用。这是非常有用的,因为在理想情况下没有人会看到它。要使其做好生产准备,只需将白色变为透明,并在其上添加文本以获取错误消息。
这是我唯一一次在 Image Playground 上获得积极的体验。我不知道这对产品有什么影响。 “图像游乐场比库存矢量更好”?
如果您想查看贴纸服务器的源代码,请查看我的/x/存储库。这真的很简单。它只是将请求转发到预先签名的 URL。没有什么其他真正复杂的事情。它完成了它需要做的事情并且在 Kubernetes 中运行良好。
享受从 CSS 复杂性中解放出来的乐趣!