A full-stack HTMX framework for Go

Stay close
to the web.

Build expressive applications with Go and HTML.
Keep the moving parts that matter.

Browser → Go → HTML
Built with HyperChi. Including this page.chi routing / htmx 4 / Go templates

A shorter path from idea to interface

The web already
has good bones.

URLs. Forms. Requests. HTML.
HyperChi brings them together with Go, then gives you the tools to make them feel alive.

Render on the server. Stream an update. Add a little local state. Spend your attention on what you’re building.

Meet the framework ↗

The live playground

Less explaining.
More trying.

These controls talk to a real Go server.
Make a request. Watch the web do its thing.

index.htmlHTML →
<!-- A little HTML goes a long way. -->
<button
  hx-get="/demo/echo"
  hx-target="#response">
  Send a request
</button>

<div id="response"></div>
Understand the round trip ↗
Your browser← HTML

Your next request starts here.

This server,
right now.
…
requests / sec
…
requests total
…
uptime
connecting
live via SSE
WebSocketsA room with everyone in it.

Say something. See it everywhere.

Open another tab and send a message. HyperChi broadcasts it to every browser in the room.

Explore realtime ↗
room
Connected to the conversation.
Search + scrollFind it as you type.

A small search. A useful pattern.

A server-rendered changelog with debounced live search and infinite scrolling.

Read the pattern source ↗
File validationGive your uploads a gatekeeper.

Check before you accept.

Validate a PNG, JPG, WebP, text file, or PDF up to 2 MB. This demo checks your file without storing it.

Forms + autosaveOne step at a time.

Keep the logic on the server.

A three-step form with server validation and draft autosaving. Try an invalid email to see the error state.

A small surface.
A lot underneath.

Bring your HTML. Keep your Go.
Reach for the rest when you need it.

Make something of your own

Your next idea.
A little closer.

Build your first page ↗
go get github.com/regiellis/hyperchi