Rendered at 04:19:37 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
sosodev 8 hours ago [-]
GSX seems interesting but I don’t understand why it depends on the node ecosystem. I just want to use Go for everything.
jackielii 6 hours ago [-]
because Vite is great. It only uses it in dev. In prod, no node involved. Try the gsx init. You'll know why. The dev experience you'll want.
EDIT: highlights are:
- live reload: it only reloads after new binary is built. also has /healthz check integration. I believe this is better than air, wgo etc
- dev panel & error overlay: see generate, build status: on syntax error, you get an error overlay explaining where the error is;
- status for slow builds: if you're working in a big project, you can see the building progress & log in the dev overlay
nzoschke 7 hours ago [-]
How does this compare to templ and templui? I see from the docs that gsx is templ compatible.
And why does this depend on node / npx? Something to do with the JSX syntax and parsing?
I wish go std templates were more ergonomic for components.
Past that I wish projects like templ or GSX have a simple go generate pipeline, and support html and text/markdown output including whitespace.
Until then I have a Frankenstein of a bunch of templating.
jackielii 6 hours ago [-]
It doesn't depend on node for runtime. Only for dev: the vite dev server, and js bundling, nothing else.
Also I've been a long time templ & html/template user, also used templui. gsx is born out of my ergonomics desire from templ. gsxui is similar to templui, but makes bundling possible. Also borrowed pipeline filters from html/template. But you're right, this does involve a _build_ step. But I think it's worth it.
Later I'll add the bundler free version. But really, vite has been so useful. Just treat it as another tool.
gen3 8 hours ago [-]
Looks good. I normally package a webui up with vite and serve that but I'll keep this in mind
jackielii 6 hours ago [-]
Yep, exactly, you can also do code splitting by adding multiple entry points. https://github.com/gsxhq/vite does the heavy lifting
EDIT: highlights are:
- live reload: it only reloads after new binary is built. also has /healthz check integration. I believe this is better than air, wgo etc
- dev panel & error overlay: see generate, build status: on syntax error, you get an error overlay explaining where the error is;
- status for slow builds: if you're working in a big project, you can see the building progress & log in the dev overlay
And why does this depend on node / npx? Something to do with the JSX syntax and parsing?
I wish go std templates were more ergonomic for components.
Past that I wish projects like templ or GSX have a simple go generate pipeline, and support html and text/markdown output including whitespace.
Until then I have a Frankenstein of a bunch of templating.
Also I've been a long time templ & html/template user, also used templui. gsx is born out of my ergonomics desire from templ. gsxui is similar to templui, but makes bundling possible. Also borrowed pipeline filters from html/template. But you're right, this does involve a _build_ step. But I think it's worth it.
Later I'll add the bundler free version. But really, vite has been so useful. Just treat it as another tool.