nim-lang / needed-libraries

This repository contains a list a needed libraries.
112 stars 5 forks source link

A good cross platform graphics library and a UI library built on top of it #67

Open alehander92 opened 6 years ago

alehander92 commented 6 years ago

"A good cross platform graphics library and a UI library built on top of it but I’m intending to start working on these in the future as open source projects (based on OpenGL)." (From Nim community survey 2017)

treeform commented 6 years ago

I also want an nim based UI library that can work cross platform on osx, win, linux, ios, js and android.

My wish list:

alehander92 commented 6 years ago

One existing choice is the Skrylar's library nfltk (in testing)

treeform commented 6 years ago

There are so many:

And Mine:

ajusa commented 6 years ago

We can add http://libyue.com/ to the list. Looks really nice based on a quick read through of the docs, and it is CPP, which means binding to Nim shouldn't be terrible. Someone who knows more than I do can verify that

genotrance commented 5 years ago

We now have updated libui and nuklear wrappers based on nimgen after both existing authors (@araq and @zacharycarter) mentioned updating them on IRC.

https://github.com/genotrance/nimui https://github.com/genotrance/nimnuklear

They are still purely wrappers and could do with contributions. @jyapayne has been helping with nimui and @AlexMax and @gogolxdong on nimnuklear.

simonkrauter commented 5 years ago

Is there any mac user who would like to implement macOS support for https://github.com/trustable-code/NiGui ?

treeform commented 4 years ago

@ajusa we can add it if its grows some Nim bindings.

vmcrash commented 3 years ago
zacharycarter commented 3 years ago

Let's not couple gfx libraries with UI libraries... This is a mistake that can be avoided.

I don't want to have to use OpenGL and GLFW / SDL just for the sake of using a UI library. Chances are if the UI library requires I use GL / GLFW / SDL I'm not going to use it.

UI libraries can be divided into retained mode and immediate mode libraries. We already have options for immediate mode - Nuklear Dear Imgui

Both of these libraries have C APIs which bindings have been generated for.

On the retained mode side - we don't have many options. Something like Qt would be nice but is a large lift. I think the closest thing we have is - https://github.com/trustable-code/NiGui

IMO making a UI library that mandates the use of a specific drawing API is bad design.

I'm still not really sure what this issue is about - are we talking about UI libraries for desktop applications or games / creative applications? I'm not going to use Qt in a game and I'm not going to use Dear Imgui to create a desktop application...

The best we have as far as non immediate-mode graphics for game user interfaces is NanoVG.

vmcrash commented 3 years ago

I was talking about a library to create desktop applications (for the 3 major systems Linux, macOS and Windows).