有,叫htmlgo
HTMGO 是一个轻量级的纯 Go 框架,用于构建交互式网站和 Web 应用程序。它结合了 Go 的速度和简洁性以及 HTMX 的超媒体属性,能够为网站添加交互功能,而无需编写 JavaScript。HTMGO 将所有内容都封装在纯 Go 中,编译成一个单一的可部署二进制文件。
核心功能单一可部署二进制文件:所有代码和依赖项都编译成一个二进制文件,方便部署。实时重载:在开发过程中,实时重载 CSS、Go 代码、Ent 模式和路由。自动页面和部分注册:基于文件路径自动注册页面和部分。内置 TailwindCSS 支持:默认支持 TailwindCSS,无需额外配置。插件架构:支持可选插件以简化开发,如 Ent。自定义 HTMX 扩展:减少常见任务的样板代码。示例代码以下是一个简单的示例,展示了如何使用 HTMGO 构建一个显示当前时间的页面:
func IndexPage(ctx *h.RequestContext) *h.Page {
now := time.Now()
return h.NewPage(
h.Div(
h.Class("flex gap-2"),
h.TextF("The current time is %s", now.String()),
),
)
} 快速入门安装 HTMGO:
GOPROXY=direct go install github.com/maddalax/htmgo/cli/htmgo@latest
创建新项目:
htmgo template
运行开发服务器:
htmgo watch
构建生产环境:
htmgo build页面和部分
HTMGO 使用文件路由自动注册页面和部分。页面是 HTMGO 应用程序的入口点,而部分允许在页面中添加交互内容。
组件组件是可重用的逻辑块,用于渲染 HTML。类似于 React 中的组件,HTMGO 中的组件是纯 Go 函数。
交互性HTMGO 提供了多种方法来添加交互性,如通过 HTMX 属性和头部信息进行部分交换、设置事件处理程序等。
性能优化HTMGO 提供了缓存组件的方法,以提高性能,特别是对于渲染开销较大的组件或需要外部数据请求的组件。
更多详细信息和文档可以访问 HTMGO 官方网站。
网友回复
有没有不依赖embedding向量的RAG技术?
有没有支持实时打断语音通话并后台帮你执行任何的ai模型?
开源ai大模型文件格式GGUF、MLX、Safetensors、 ONNX 有什么区别?
出海挣钱支付收款PayPal、Wise 、PingPong、Stripe如何选择?
如何实现类似google的图片隐形水印添加和识别技术?
linux上如何运行任意windows程序?
ai能写出比黑客还厉害的零日漏洞等攻击工具攻击任意软件系统工程?
js如何获取浏览器的音频上下文指纹、Canvas指纹、WebGL渲染特征?
为啥ai开始抛弃markdown文本,重新偏好html文本了?
网站有没有办法鉴别访问请求是由ai操控chrome-devtools-mcp发出的?


