有,叫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 官方网站。
网友回复
有没有类似豆包pc端ai大模型编程代码块折叠右侧流式输出带预览的前后端代码?
nodejs有没有很快的目录爬虫和通配符文件查找库?
js如何流式输出ai的回答并折叠代码块,点击代码块右侧可预览代码?
ai大模型如何将文章转换成可视化一目了然的图片流程图图表?
大模型生成html版本的ui原型图和ppt演示文档的系统提示词怎么写?
rtsp视频直播流如何转换成websocket流在h5页面上观看?
为啥coze会开源工作流agent coze studio?
如何检测网页是通过收藏夹打开的?
python如何实现类似php的http动态脚本请求处理响应代码?
js如何实现类似php的http动态脚本请求处理响应代码?