GSX seems interesting but I don’t understand why it depends on the node ecosystem. I just want to use Go for everything.
jackielii 23 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
SamInTheShell 16 hours ago [-]
I'm kinda in the camp of wanting nothing to do with node if I'm building in Go. We have our own stdlibs for serving.
pjmlp 9 hours ago [-]
I am on the Java/.NET camp for the most part, however I do share the sentiment.
throw1234567891 9 hours ago [-]
I’m in the other camp. I switched to node backends from go because of vite.
indemnity 16 hours ago [-]
Same, hard pass on remote shell as a service that is Node and its ecosystem.
jackielii 11 hours ago [-]
I'm not sure I follow. Node is not on the production path
evilduck 6 hours ago [-]
It's easy to follow, it's a knee jerk tribalism reaction and not a logical or informed one. Go attracts backend or anti-frontend people so anything intermingling the two will draw out the commenters who bemoan anything that realistically builds a modern website. Just ignore it, your choice for dev tooling is practical and makes sense to me.
saurabhmudradi 14 hours ago [-]
Cool! was looking for go based frontend options for local data heavy dashboard usecase, this seems perfect.
hoppp 3 hours ago [-]
A GSX + Wails combo sounds interesting for developing desktop apps fully in Go
nzoschke 1 days 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 23 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 1 days ago [-]
Looks good. I normally package a webui up with vite and serve that but I'll keep this in mind
jackielii 23 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.