290 comments

[ 3.3 ms ] story [ 27.2 ms ] thread
(comment deleted)
That sounds like an amazing idea. I've been using a lot of Rust+GPUI and sometimes behaviors that I'm expecting to be there just aren't.

Swapping it for UI that's as battle tested as Blender might improve things.

Super curious about the limitations you see in GPUI! I built a custom rust UI framework for the software i am developing but i always kept an eye on GPUI, what is limiting about it in your opinion?
I'm curious about the limitations too.

GPUI and Makepad are the two Rust UI frameworks that seem the most interesting for what I'm looking for in a UI framework (hybrid immediate/retained mode, self-drawn widgets, open source).

Not so much limitations. Rather behaviors I'm used to, around scrolling content, input fields, splitters for resizing panes etc. Can't recall specifics right now. Just small things that I usually get out of the box had to be implemented here.
A glaring limitation is that it requires a modern GPU, which makes it unusable in many contexts.
always liked blenders design language, looks cool!
Ive been thinking this would be amazing to do for ages. happy someone finally did it. its the perfect system for interfaces where speed matters. hope to see more 3d modellers, video editors, daws and simulation systems built on this.
thanks for sponsoring!! Do let me know if there's anything you built with it :)
It would be such a boon if GIMP and Inkscape could adopt blender's fantastic GUI
Inkscape’s UI is much, much better than Blender’s, IMO.
Inkscape is actually one of the few FOSS apps that is actually pretty intuitive to use. In fact, way back when I first started using vector design tools, I found it more intuitive/had better feedback than Illustrator (same thing can't be said about GIMP vs Photoshop). Inkscape really is great, but I have one huge gripe: I'm sure there's a system to it, but the file export name never stays what I want it to be...
With a much simpler set of tasks to accomplish.
People are confusing UX with UI. Inkscape UX might be better for many people but it would be hard to argue that Inkscape UI is better - it got better recently but it's still far from blender polish.
I'm surprised how much everyone's opinions differ in this thread. I've always found blender's UI incredible but inkscape's awful (though nowhere near as bad as gimp)
These complex tools are "intuitive" to whoever uses them the most
They are completely incomparable applications.
and then rename it blimp
Fantastic is the last word I would use the describe blenders UI/UX.
A side by side screenshot of inkscape/gimp/blender for those who don't have them installed

https://cleanshot.com/share/WW9yFdMy

One of the biggest problems with GIMP and Inkscape is how GTK renders numeric inputs. Look at the size of those +/- icons on the toolbar. For drawing software with lots of numeric inputs, that means an insane waste of space. Proprietary software like DaVinci and even Photopea have much smaller inputs, allowing them to create far more complex GUIs.
Tbh, you could summarise a lot of the issues with their UI as "GTK"
GIMP is far from a nice example of what GTK can do…
For sure, which is ironic given it was the application GTK was created to support. But even so, I don't think I've ever really seen a GTK-based application I actually liked (the rest of the UI is going to have to make up for the atrocious file picking dialog, for example)
A lot of these UIs were built around icons, following the direction MS Office took in the early 2000s. These once had colours and were somewhat distinguishable.

When they tried to jump on newer trends they made them all monochrome, and they don't have distinctive sillouettes so it's just completely inscrutable. That Inkscape screenshot is horrible. I count 129 icons.

And yet they still devote so much space to their bizarre colour palette, which is huge but still manages to omit most of the gamut? It's the kind of design that really only comes from decades of OSS development.

I just want to be able to crop and draw on top of images. Like old Paint. That is literally all I want to ever do with images. What should I use in Linux for this purpose
Use KolourPaint, it's a windows 9x/XP paintbrush clone with only a few improvements tacked on.
Photocraft has been working alright for me. I really struggled to learn GIMP, and I haven't found any easy lightweight image editing tool that replaces Paint.NET for me before trying Photocraft. It's still a little confusing since I'm not used to photoshop-like bindings and layout, but it hasn't been too hard to adjust. (I also only ever use it for small simple edits, drawing, cropping, color gradients, background removal, etc.)
I easily modified pinta to do exactly this. You mean overlay, right? It can overlay, draw, manipulate, and I added a better file navigator so I can see which imagery I want to overlay to begin with. My use case was scientific in nature. What is yours, if you don’t mind my asking?
IrfanView in Wine, f12 opens a really old-school paint toolbox.
https://photoflare.io/ is the one I've found to be most usable. Pinta is just unpleasant to use at high resolutions and it's buggy.
It's just pointless to port GIMP over at this stage, you may as well do a greenfield project without the cultural baggage and poor foundations.
I love the general idea behind Blender's UI.

And I do appreciate the effort that goes into it, especially in the latest versions as it got much better,

But I really really really REALLY don't want that UI in anything else other than Blender.

Please don't.

If you're working on a small game project without an existing framework/platform, you usually build a really bargain-basement game editor alongside it. That editor takes a long time, and it's often spent in arranging UI stuff.

If you're already using Blender to make assets, there's some benefit to stuffing Blender's UI into your game editor too.

(comment deleted)
After trying blender for about 20 years I still find the UI/UX awful. I think a lot of the new blender generation has baby duck syndrome.
[dead]
> That's actually extremely common in scientific (GUI) software. And in any professional setting I guess.

I don't think that qualifies. There's an important distinction to be made between an aesthetic preference versus a professional not appreciating a tool being mucked with. Anything that interferes with my workflow without immediately providing substantial benefit is something that's actively harmful. In fact even if it does hypothetically provide huge benefits I still might not want to deal with it right this second.

......huh?

So if it's for an employer it's rational but if you're making the same choice for yourself it isn't? If one of those is baby duck syndrome they all are.

I think they're noting how the nature of baby duck syndrome might depend on whether the change introduced is within something that is for work or for play.

As in, that people who refuse change in their play activity are in some way different (less rational?) than those who refuse change in their breadwinning activity.

I see the distinction, but am not sure I agree. It's just a neurotype spectrum of the same phenomenon. Baby duck is baby duck

Not quite. The distinction is between avoiding an articulable and concrete negative impact versus mere aesthetic considerations. For example, this pan is more difficult to use because it is somewhat undersized for what I'm trying to cook versus I don't like this pan because it's the wrong color or has the wrong accents or whatever. I understand baby duck syndrome to refer to the latter - ie having an unsubstantiated bias towards aspects of the thing first encountered.
I'd only point out that undersize and oversize aren't purely objective concerns, but are also aesthetics compared to what you're used to.

I wouldn't be arguing about this except that I can't trust my clock app on my phone because some bozo keeps redesigning it to work a different way every 6 months

And I think that's an excellent example. I don't think dislike of sudden and unexpected changes to your clock app would qualify as an instance of baby duck syndrome precisely because it has a material impact on your usage of it.

In contrast, if you prefer phones with blue bodies for no particular reason and your first phone happened to be blue then it's at least possible that's an example (or maybe you just really like that color, I dunno).

Blender had a very different ui before and a big redesign, so most people have different opinions between the old and the new design. It sounds like you find all of them awful. I find that surprising and wonder what 3d program you find has good ui.
I have used every version of blender and it has always felt harder than it should.

I have used 3Ds max, maya, lightwave, cinema4D, milkshape, wings, Houdini, unreal engine 1 - 5, Hammer, Threejs editor and probably more. The Blender UI is worse than all of the above.

The question was which one do you think has a good UI... I'd be keen to know your opinion on this as well, what you think the current high water mark is in 3D design software UI is, or do you think they all suck, but Blender just sucks the most?
At the time of blender's old ui 3Ds max had menus nested 5-6 level deep in an ui that would make gimp very good design. Between that 3Ds max praise, conflating old blender ui and new blender ui, and not providing any specifics on what makes blender so bad (I just provided some about 3D max) I have to assume there is no truth to it. We will agree to disagree. I think blender ui is excellent, but a 3d editor is a specialised app.
With 3Ds Max listed as good UI we really must just have different tastes, hah! :D

You've given quite a list of tools with different purpose.

For 3D work I would personally rate

Modo 3D, Zbrush > Blender, Houdini > Softimage XSI > Maya > space intentionally left empty :P > 3Ds max

Blender UI looks very nice and is very customizable. I think it's "ok" in beginner discoverability (none of 3D softs is great at that really) but when you get experienced with it it's one of the best.

I really like how they managed to keep all the tools and views pretty consistent given how many things you can do in it. Whether you are working on objects, vertices, nodes, movie clips you get the same shortcuts where possible.

Fascinating, I would have ranked Softimage XSI above blender (even modern blender), it was just that intuitive to me.

3Ds max being dead last is fitting, people who think it's peak UI just have stockholm syndrome in my opinion.

I learned on blender and now all the other editors are ruined for me. I wonder why they haven't added a blender mode at this point for people who want more expressive use.

Zbrush is ok.

Apparently there is a crowd still using 2.79b, the last version with the old UI (current LTS is 5.2)

My baby duck fingers could probably pick up LightWave 3D again in an hour or two. I could never gel with Blender.

I'm not a professional designer or 3D modeler but I've used Blender quite a bit. I know what you mean but the latest UI post redesign isn't bad.

Blender does a LOT of stuff. Its not an easy product to create an UI for. But I think the problem is much bigger when coming from a different 3D package than when learning from scratch.

My teenage kids use Blender as the first 3D package they've ever learned. I was impressed with how quickly they ramped up through videos and learning from each other.

> I think a lot of the new blender generation has baby duck syndrome.

Maybe some of them do, but even though I disliked the UI at first, I've come to appreciate it as I've learned it. It's simply different from most other software, so that obviously causes friction. However, I think once you learn it, it's quite a good system. There's a tradeoff between optimizing for familiarity/new users, and providing an optimized experience for advanced users.

I agree, I don't think blender has changed as much as people say. But I don't think it is baby duck, I think blender always had a good UI, it has just taken the rest of the world 20 years to catch up.

A lot of people go "Blender UI was horrible, but they redesigned the whole thing and now it is good" Having used blender in a minor role for 20 years(i think I started on 1.7), I think this was just a big psyop by the blender team. Sort of how the client goes "Change things" and you change nothing, wait a day, and tell the client "I made the changes you requested" client: "I love it"

I am not saying the blender team has not made substantial improvements to the UI over the years, but the core is still that same quick blender workflow, This is very different from the normal clunky GUI design of 3d modelers of the era and as such blender got a reputation for having a weird UI which was easily translated to blender having a bad UI. So what do you do when you have an unwarranted bad reputation? Especially now that the rest of the world has caught up and is using your flows and they are not so weird anymore. Make a dark mode and put out a big press release "we redesigned everything, it's good now" so people will try it.

I feel like the 2.49 to 2.6 update was a bit overblown, but the 2.8 update was pretty damn massive to me eyes
(comment deleted)
In that case it would be competing with imgui, egui and similar libraries, but the submission is comparing it to GPUI.
Do imgui/egui have comparable numbers of interface objects and parameters to adjust their look and behavior? I certainly wouldn't suggest either as an alternative to QT-level interfaces—which seems to be what's offered here.
>If you're working on a small game project without an existing framework/platform, you usually build a really bargain-basement game editor alongside it. That editor takes a long time, and it's often spent in arranging UI stuff.

Not in an age of AI.

I mean if you want to code all this stuff by hand, I get it. But that's a choice. And since it's a choice that means shoehorning a Blender UI into a "bargain-basement game editor" (and having a "bargain basement game editor) isnt really needed. You absolutely don't need to spend a lot of time arranging UI stuff.

Game tooling is pretty trivial now and it's not user-facing. Again, I fully understand why someone would want to do this themselves still but let's not pretend thats not a choice at this point.

Just curious: if this is really the case, why are you even spending time commenting on and thinking about one particular UI framework or not? As a dummy still writing code and making games by hand, I know why it interests me, but isn't this like an archaic topic for you? What is there to actually gain or learn from one library or another? Can't you just think about high level concepts and pure ideas now? Spend money to do the rest?
I think it’s just about as weird as questioning somebody’s motives on an Internet comment thread. I certainly share GP’s opinion about game tooling, but i’m here because i still care about making good software and that involves learning about and navigating technological developments as they happen. Is that sufficient reason for you?
[delayed]
You are reading them wrong. I think they mean “customer facing” instead of user facing i.e. the player doesnt care if the level editor has some jank: they never see it.

For the types of tools that your coworkers are paid to use, vibing a first draft and developing from there is so much more time and money efficient than writing by hand that you would be dumb to spend your tooling budget differently.

Thats how i read it. Someone still needs to use tools, no one is saying that claude is going to one shot mass effect 4 yet.

Depending on what you and the other poster mean by "arranging UI stuff", AI could either solve the problem for you or create larger problems, especially if you're not opinionated on either technical or UI matters.
Imagine this spinning off and becoming this generation's GTK.
Not going to happen, as it's GPL.
Akin to Java in Oracle vs Google case, keeping the API but LLM-ing the implementation can be considered as fair use.
There can never be a compatible LGPL release?
Only by reimplementing it all, as Blender is GPL.
So, about a week's worth of vibe coding.
Why not? For similar applications it would be really beneficial to not have to reimplement all the little UI interactions they've polished over the years
Polished is not the word I reach for when I think of Blender's UI
This is just repeating a common meme. Blender's UI layout and organisation is fine, but this is a UI library. There's nothing wrong with blender's UI technically, in fact its pretty decent overall
> Blender's UI layout and organisation is fine

I absolutely detest it (TBF I haven't used it for the past ~2 years) but I also recognize that it's an incredibly difficult problem space that lacks an obviously good solution, the tool itself is inherently and irreducibly complex, it's a free project with extremely limited resources, it's been consistently improving over time, etc, etc.

Everybody hates all serious 3d application interfaces… they’re just complicated. I’m professionally competent in Houdini, Maya, Max, Blender, Zbrush, Marvelous Designer, the UE editor… they all suck in various ways but it’s all a giant set of trade-offs and priorities. Beyond that, lots of these programs have lineages that go back decades longer than almost any modern dev environment and being so complex, UI changes can be quite disruptive. Kind of like why so many *nix cli tools are the same as they were decades ago. A lot of (no, not all) developers think they have the most complex tooling in the computer world — they definitely don’t.
There's a lot of thought in Blender's UI, and a lot of improvements over the years.

Fundamentally all 3d modelers have inherent degree of complexity. The ones that give a "simple" facade with fewer options make other things harder or having to look into obscure places.

All of that are beside the point however: people will use this as a GUI library, not as a Blender's UX design.

Can you give examples of what are polished UIs in your opinion?
Blender may be the single most polished open source project ever made.

It is actually a miracle that it is as good as it is considering other open source graphics programs like GIMP are horrendous to use.

I'm using it as a video editor for Linux, and I'm constantly surprised how rock solid and fast it is. DaVinci wouldn't even run on my PC without a GPU, but Blender can run on anything I throw at it. And aside from those two, the video editing situation on Linux is a wasteland. I'm so glad Blender added VSE, and that I found it and learned it.
This was true 20 years ago but has not been true for a decade. Blender evolved from among the worst UI/UX on the planet to among the best. It's now fast, intuitive, decently hierarchical and well-organized, leans into search and pie menus, in general it's very polished and in some ways ahead of the curve.
How about a simpler UI consisting of just a text input field for AI.
Yeah, nothing like e.g. watching a video or drawing something and changing settings by asking AI.
Egui also has terrible defaults: https://github.com/emilk/egui

But a good design system does the trick. Artcraft apps use this library and their Adobe clones come very close to the original apps.

Every Arftcraft app and non Artcraft related software clones trying to reuse the Artcraft libs (craft-libs) already have everything ready to use.
Yeah but, this can’t possibly be any worse than tkinter.

Q: “Whats wrong with tkinter?!?!”

A: It sucks, that’s what!

Typical HN top comment negativity :)

That UI is fine to be on many more places than Blender, given that many libraries people use are way worse. Imgui for one example.

Definitely a worthy goal but they've gone down a super weird route by providing clones of other GUI toolkit APIs on top of this. Your target audience is people that are ok with vibe coding. They don't care about switching to a proper Blender-style API.

Just because you can...

More like a “why not both” situation, imho. I have apps I could port to use this immediately.
Use the native widget toolkit if the platform you target; your users will love you more.
Most native widget toolkits don't actually support rendering into 3d canvasses very well, nor very compact UI layouts. I generally prefer native widgets, but for a dense prosumer application, they aren't always the correct choice (and you'll see even Apple stray from their native UI widgets for, say, Logic Pro)
They actually do, just not on GNU/Linux, **BSD worlds.
Apple bought Logic.
> Apple bought Logic.

A quarter-century ago, yes. If they haven't migrated to native widgets in 25 years, that might be an indicator of something

It took them close to a decade to migrate the Finder to Cocoa.
I target all platforms, and so does most other desktop software today.
Ok for linux it's GTK and Qt. What's native for windows in 2026? It's a complete joke of system UI.
In 2026 it’s WinUI. Microsoft has been clearer about it: https://learn.microsoft.com/en-us/windows/apps/winui/winui3

But the premise is silly: if Linux has two native toolkits, how is this a sensible recommendation?? Hint: it isn’t, because GTK/Qt are not the native, but rather simply the most used.

Also, go to Mac, and SwiftUI still doesn’t support all that AppKit used to, leaving an incentive for developers to deviate from the platform’s recommendation.

And back to Windows, WinUI still doesn’t fully replace Win32 or Windows Forms, so same conclusion applies.

> But the premise is silly: if Linux has two native toolkits, how is this a sensible recommendation?? Hint: it isn’t, because GTK/Qt are not the native, but rather simply the most used.

I’m going to hazard the claim that in probably most people’s conception of the term, GTK is native in GNOME, Cinnamon, Xfce, etc. and Qt is native in KDE, LXQt and Sailfish OS.

I am pretty sure HN is an enclave of the only remaining people in the world who think this way. A sanctuary preserving the last specimens of an endangered species.
None of the apps on my computer have any sort of cohesion with each other. It might just be me but I think this idea is dead, on Windows and Linux at least.
License of GPUI is Apache and BlenderUI is GPL, which is limiting for adoption.
GPL is the best opensource license. But seeing this as a library, it might need to be LGPL rather than pure GPL (ala, you can use it as a library without "tainting" your source, but if you make modifications to the library, you must release it).
AGPL if you wanna be serious about it.
Hello, creator here.

I don't think we can use LGPL since we were derived from Blender's Source code, which is GPL.

ah you're absolutely right; hadn't considered that!
Missed this - this is a deal breaker for many (most?) potential applications. GPL is fine for applications like Blender, but is limiting for libs.
>Who wrote it?

>The repository is built entirely using LLMs, with no human-written code. ...

and thats fine. without LLMs no human would have invested so much required time and effort to do this! and now such awesome things are possible with a bit of tokens and a small prompt. overall a win
Until the project gets abondoned after a few days, perhaps months. :)
Maybe, or maybe not. Let the fittest survive. Also what is developed in a few days can be easily picked up in a few days.
It would be nice if the original chat history with claude is included in the repo. That way design choices are clear and its easier to review and improve upon.
And that is fine; until an malicious actor pushes a PR of "add a botnet that connects to an IRC CnC" somewhere in the code.
It looks good, but the GPL license restricts the use cases
Well.. Old discussion but I actually think it's the better way (sorry. MIT, you are more free then anything). Either contribute back or stay away from open source work that others did for you.
Can you even copyright LLM output? Even the readme points out humans didn't make any of the code.
In this case you just can't spin it any other way than it being a derivative work of Blender. And this is great.
My understanding is that the LLM stripped away the non-UI code from Blender. The majority of the code is ported directly from GPL'd code from the Blender code base.
This is not the spirit of open source.
Most software is not GPL. When comparing this to alternatives like EGUI and GPUI for building a new app, this cannot be considered, while the others can.

GPL makes sense for applications like Blender. For a general purpose library, it's a dealbreaker.

It depends on what you're building. If your app is free software, a GPL library is no problem at all. (and your own code can even stay MIT or Apache.)

It "cannot be considered" only for proprietary apps.

I was just a kid in 2002, so couldn’t contribute, but I remember checking the MoneyMeter going up every day, so that the community could buy out Blender and make it free software. GPL does restrict it, but it’s also only the only reason Blender is not a long forgotten piece of software from the 90s.
Three things one must never ask: a woman her weight, a man his salary, and an HN commenter what “use case” the GPL ruined for them.
In this case LGPL would be a more expected license for UI libraries, at least.

But that wouldn't work for a straight derivative of a GPL project.

in what way?
I believe you could only use this library if the whole resulting app is also GPL.
You can work around that. If you have an application that also has a command-line option, then you could create a UI for that application with this library. The UI module for your application will have to be under GPL because this library is licensed under GPL. But your core program can still be closed-source, as long as you distribute both parts separately. A bit convoluted, but I've seen some applications that do this - they don't distribute the GPL code directly, but ask you to download it separately. (In fact, if I remember right, they had done the opposite of what we are discussing - the developer had created a closed source UI for an open source GPL application, and asked the users to install the open source application through Linux package managers). As far as my understanding of the license goes, this conforms to the GPL only if (1) the GPL code isn't essential or a core part of the application, and (2) you don't distribute both as one application (which implies that the GPL part is absolutely necessary part of your application, thus violating the first rule).
Is it bui's author decision or a consequence of Blender itself being GPL?
I’ve thought many times “Man, those widgets look terrible!”

I’ve not once thought “Man, those widgets are slow!”

I never found them terrible, but I guess I spent a long time staring at them so maybe I just got used to them.

Do Maya and others have better UIs? Honestly, I find them more repulsive than Blender's

It's obviously vibe coded, but it's quite well done by the look of the ideas and implementation.
not a single mention of a11y or accessibility, so please be careful before using it for general purpose applications.
That was my first thought as well. It would have been reassuring to at least see it on the roadmap.
[dead]
It wasn't mentioned at the time of writing the comment.
This is excellent. I thought about this years ago for an OpenGL based desktop UI. Apple's UI is using something similar I believe. And the Windows UI too is mostly rendered using Direct3D (which is comparable to OpenGL) since Vista.

I hope someone else uses this for a new Linux distro.

Well, given that so many folks always argue they are Linux distros even though it is an implementation detail for userspace APIs, ChromeOS, WebOS and Android.
The readme suggests it's a port of the blender code, at least the renderer is claimed to be so:

> The drawing code is a C port of Blender's own widget code

How can we guarantee BUI is still performant?

I have a python "DSL" which allows to create a simple UI for synth parameters you also make in python. It uses Tk and looks like, mmm, Tk with all other Tk issues. Project was abandoned because of it. Looks like it's time to revive!
I gave it a quick try (Fedora 44/Python/pyenv) with some Tkinter code which is supposed to just work... It doesn't.
After further exploration, it does work, but not without fiddling around with the tkinter code that exists. Not bad results; better than the original Tkinter rendering, anyway, unless you like that retro look.
Can you please tell me exactly what happened, so I could fix it? Thank you!
Vibe coded slop does not actually work, what a surprise
This project would benefit from a longer Readme.
I have been remaking a Blender style UI in Kotlin for my Umamo project because I love Blender's UI that much.

I think I will keep going with my own efforts, but this looks nice!

Yess, never stop building!

We also have a kotlin binding support coming soon, btw!