Skip to content
This repository has been archived by the owner on Nov 28, 2023. It is now read-only.

UI #5

Open
gedw99 opened this issue Aug 19, 2021 · 4 comments
Open

UI #5

gedw99 opened this issue Aug 19, 2021 · 4 comments

Comments

@gedw99
Copy link

gedw99 commented Aug 19, 2021

Great project .

I think that GIO would be a great GUI framework to improve the UI and also UX.

Fyne is ok but gio can compile to web, desktop and mobile.

I noticed you have gpu , shader experience, so I think you will really like how gio works .

https://github.com/gioui

run component example ! It’s a good example of high quality I feel.

Let me know what you think as I think that Convey concept has merit as a communication medium to help raise quality of general conversation . I use gio and from looking at your code I can see how easy it would be to add a gio ui.

am willing to help

@gedw99
Copy link
Author

gedw99 commented Aug 19, 2021

Also I just realised that SEO might be a requirement for Convey .
Is it ?

gio wil not give you SEO because it renders only to a canvas essentially from WASM.

I was thinking about this a few days ago and realised on solution is to also render to the page when being visited by a search engine spider.
My knowledge of SEO is not that great but I gather that search engines can down vote you if this is done.

Maybe there is another way by updating just the meta tags in the DOM via wasm . This would be cool as far as SEO rules are.

Example of meta tag concept: https://neilpatel.com/blog/open-graph-meta-tags/

curios what you think

@stuartmscott
Copy link
Member

Great project .

Oh thanks! I'm glad you joined and I look forward to seeing what you convey.

I think that GIO would be a great GUI framework to improve the UI and also UX.

Curious, what parts of the UI/UX need improvement? How would switching to GIO automagically improve them?

Fyne is ok but gio can compile to web, desktop and mobile.

Maybe, but a website works on all devices and uses less of the client's battery than a WASM/WebGL instance running 60FPS all the time.

I noticed you have gpu , shader experience, so I think you will really like how GIO works .

https://github.com/gioui

run component example ! It’s a good example of high quality I feel.

One day I'll get my head around immediate mode, for now though I don't find it as intuitive for writing apps.

Let me know what you think as I think that Convey concept has merit as a communication medium to help raise quality of general conversation.

Thanks again!

I use gio and from looking at your code I can see how easy it would be to add a gio ui.

am willing to help

It would be interesting to create a convey frontend in GIO and Fyne so we can compare the aesthetics, performance, and efficiency with the current web one.

Also I just realised that SEO might be a requirement for Convey .
Is it ?

Yeah at some point, haven't given it much thought yet.

@gedw99
Copy link
Author

gedw99 commented Sep 3, 2021

hey @stuartmscott

thanks for comments.

yeah i will have a go at a GIO gui for Convey.

About battery life, yeah you right...
On web it is using Webgl Canvas, and i see your point about it hitting battery life.
GIO now uses native GPU on the respective OS and so is pretty low battery usage.

  • on Mac and IOS it uses Metal,
  • On windows it uses directx,
  • on Android it uses Vulcan.

@stuartmscott
Copy link
Member

The issue is that GIO will recalculate and redraw the entire GUI every frame (@ 60FPS), even if nothing has changed. This is a waste of energy on devices that have limited battery capacity. Fyne is slightly better because will cache the textures of unchanged UI elements, but the shaders are still executed for every frame.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants