htmgo
build simple and scalable systems with go + htmx
looking for a python version? check out: https://fastht.ml
introduction:
htmgo is a lightweight pure go way to build interactive websites / web applications using go & htmx.
By combining the speed & simplicity of go + hypermedia attributes (htmx) to add interactivity to websites, all conveniently wrapped in pure go, you can build simple, fast, interactive websites without touching javascript. All compiled to a single deployable binary.
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()) ) ) }
core features:
- deployable single binary
- live reload (rebuilds css, go, ent schema, and routes upon change)
- automatic page and partial registration based on file path
- built in tailwindcss support, no need to configure anything by default
- custom htmx extensions to reduce boilerplate with common tasks
get started:
View documentation on htmgo.dev.