apache / age-viewer

Graph database optimized for fast analysis and real-time data processing. It is provided as an extension to PostgreSQL.
https://age.apache.org
Apache License 2.0
233 stars 235 forks source link

Developing AGE Viewer desktop application in Go Language. #87

Open Nimra-1234 opened 1 year ago

Nimra-1234 commented 1 year ago

Can we guys discuss here about details. Like how we start this and what will be used for backend.

saadjameel commented 1 year ago

Yes there are many front-end and back-end frameworks of Golang For front-end we can use : Gin, Echo For backend we can use : Wails, Guark

Nimra-1234 commented 1 year ago

For Environment setup , I have installed ,

  1. Go Language
  2. VS Code with (GO extension)
  3. And also run "Hello world" simple code over there.
AhmarZaidi commented 1 year ago

I had started with GO basics sometime back. Now I'm continuing with that. Will look into the frontend libraries after that.

saadjameel commented 1 year ago

Yes better to understand the core knowledge first then we'll move to the desktop framework part.

Nimra-1234 commented 1 year ago

I'm using this series, which I found very interesting and informative. Link : https://www.youtube.com/watch?v=JoJ8Sw5Yb4c&list=PLRAV69dS1uWQGDQoBYMZWKjzuhCaOnBpa&index=1 Hope you guys will also love that.

sarthak-19 commented 1 year ago

For the front-end part, as mentioned in the AGE project list, there are two choices,

  1. Wails
  2. Guark I think we should go with wails as Guark is relatively new and since both are in development stage, Wails is growing at much faster pace. What's everyone's take on this?
AhmarZaidi commented 1 year ago

@sarthak-19 I second that. Wails has much better and refined documentation. Should be easier to learn and adapt.

sarthak-19 commented 1 year ago

So in the process of learning to create a desktop application, I came across two frameworks for GUI as Go don't have in-built GUI libraries :

  1. Wails
  2. Fyne I was initially fixated on using Wails but now got confused as to what will be a better choice.

    Fyne is

    • a cross platform GUI inspired by Material Design
    • more popular and stable
    • has better community support
    • has last release 6 months before
    • use Vue templates
    • no need to know React, Angular or VueJS framework, we can create GUI applications for Windows Mac Linux in Go itself.

      While Wails last release was 2 years ago

    • is growing
    • gives us flexibility in developing UI
    • allow us to use good old HTML, JS, and CSS.
    • can use any front-end technology we are familiar with like React

      Here's website for reference :

    • https://go.libhunt.com/compare-fyne-vs-wails
    • https://www.reddit.com/r/golang/comments/yuwxs0/comment/iwc5dvv/

Please take a look into this, so we can finalize the framework and have a discussion on it.