maxence-charriere / go-app

A package to build progressive web apps with Go programming language and WebAssembly.
https://go-app.dev
MIT License
7.88k stars 362 forks source link

Survey: What UI framework do you use? #979

Closed suntong closed 1 month ago

suntong commented 1 month ago

I know go-app can build fancy sites like Lofimusic.app, but do you guys use it to build normal web app as well, those web forms with different gadgets and buttons?

What UI framework do you build your go-apps on top of please.

maxence-charriere commented 1 month ago

I use it mainly for https://murlok.io Edit: with vanilla css only.

oderwat commented 1 month ago

What UI framework do you build your go-apps on top of please.

We do not use any frameworks for our PWA. We build our own UI Elements using a combination of Go-App declarative syntax components that are basically HTML5 elements and TailwindCSS. What "framework" could possibly be used anyway? You should not (can't) mix JS frameworks that modify the DOM with Go-App. For CSS frameworks there are some options but many of them need extra JavaScript and webpack. I am already not happy needing NodeJS to make TailwindCSS "work". We have to deal with AngularJS and React based legacy apps and that makes me sick, every time we need to touch them.

Our PWA's are actually also not "websites", they are applications that happen to be distributed as PWA. I would probably not create a "normal" website using Go-App, as the WASM is much too big for that. We also fight against memory and storage limitations in iPad/iPhone. Stuff is pretty shaky to be used in production. But so far we have good results.

suntong commented 1 month ago

they are applications that happen to be distributed as PWA

So in your applications, are there any input controls, gadgets and buttons? They're mostly decorated by TailwindCSS?

oderwat commented 1 month ago

As long as they are not based on canvas elements they, they are created with HTML and styled with CSS. TailwindCSS is just a helper for that.

suntong commented 1 month ago

You should not (can't) mix JS frameworks that modify the DOM with Go-App. For CSS frameworks there are some options but many of them need extra JavaScript and webpack. As long as they are not based on canvas elements they, they are created with HTML and styled with CSS. TailwindCSS is just a helper for that.

OK, so the rule of thumb is not to choose any frameworks that need JS to be functional; pure HTML and styled with CSS is fine.

Thanks, I'll leave it open for a month for other people to chip in, before closing it. thx.