Gx types the full loop of a web page: the template, the route, the link, the action, the form and the signal in the browser. A renamed field stops the build. It does not give a 404 at run time.
Quick start
Make an app, run it and change a page in five minutes.
Tutorial
Build a small shop: pages, an action, a form and a registry component.
Guides
One page for each feature.
Reference
The command, the gx package, the grammar and each diagnostic.
Components
The registry, with live examples and the code of each one.
Comparisons
What templ, gomponents, Next.js and Rails do better, and what Gx does better.
What you get#
- Typed templates. A
.gxfile is HTML with Go expressions. Props have names and types. - Typed routes and links. A route is a Go struct. A link is a value of that struct.
- Typed actions and forms. An action answers with typed patches. A form has one rule set for the browser and the server.
- No node. The
gxcommand and the Go toolchain run each default workflow. - One binary.
gx buildputs the pages, the scripts and the stylesheet in one file. - Components that you own.
gx addcopies a component into the app, andgx updatemerges a later release.