🎉 Node-RED 5 beta.0 released

A few points - initial play;
When the node column is dragged to the right (by dragging the button) the View menu option Show Palette is unticked (as it should be) but it can still be ticked - to show an empty column. It would be better if it was disabled when the nodes column is on the right.

Access to the Configuration nodes is shown in the menu, I think this is overkill as it is also available in the View menu option and in the right-hand tab bar.

Love the Toggle navigator, makes it much quicker to get to the bottom of a long flow.

Zoom to fit, would it be possible to have an Un-zoom so that I can toggle it on & off?

Just being picky now, but would it be possible to have a 2 overlay on the Dashboard 2 icon (I know the tooltip identifies it but..)?

Not sure if it did it before 4.1.2 but still does it, when zooming in, then out, the view point moves

If you have groups on the desktop and drag a debug node onto a space outside of a group, it sometimes expands to encompass the new node.

Drag it inside a group - especially towards the bottom - and the new node is not added to the group.

Noticed on Firefox after I moved the palette from one side to the other.

adddebug

1 Like

I agree with jbudd here - the buttons take up far too much horizontal space for virtually no benefit. Much better as they were actually.

Because flows are forced to go horizontally, that is the priority for space when working even on simple flows, let alone complex ones.

Not only does this move the palette - which I think I might actually like since it doesn't always get regularly used. But it still leaves quite a gap (and I'm struggling to work out what is driving that gap when there are no icon buttons in it).

In truth, since there are both menu items and keyboard shortcuts for the different side panels, the button bar should be completely optional and should be selectable/deselectable in the view menu.


A small issue with the hamburger menu. This was actually present on older versions as well but I've only just noticed thanks to my current eye problems which mean that I've set my large monitor to supersize things.

The menu does not get a scroll overflow when the vertical space is insufficient.

Reproduced on Vivaldi (chromium) as well.

Different behaviour whether the palette is on the left or right.

Drag from the left, pass over the group and come back, you have to go quite a long way into the group before it will register.

Drag from the right, as jbudd says.


Sorry, also forgot to say - LOVE being able to move the different sidebars left/right. I often want the debug panel showing AND the context panel.

In the future, would be really nice to be able to save layout configurations and easily swap between them. Maybe in v6?! :wink:

Sorry, another small issue. The default for the main flow panel is not to show the grid but snap is on. But if you open the Settings, show and snap are both ON and the grid actually shows in the background. But if you then close the settings, the grid disappears again, even though the settings say it should be on.

Ah, actually, you cannot turn on the grid in this version.

UIBUILDER seems to be working fine, including the sidebar node.

I think this issue happens because the horizontal boundary is calculated using the node palette's width. When you move the palette to the right, the origin is still considering the palette's width. But this is just a guess. I can check this today or tomorrow.

this is genius!

2 Likes

Not only does this move the palette - which I think I might actually like since it doesn't always get regularly used. But it still leaves quite a gap (and I'm struggling to work out what is driving that gap when there are no icon buttons in it).

This is the gap that I get, is yours bigger :grin:

Happens with Edge also. Occurs when approaching the Group box from different directions when the box is at a different distance from the left. Also at different distances along an edge. Still happens when the node pane is back on the left.

Interesting that a node already on the desktop correctly gets included in a group only when it overlaps the border sufficiently.

If you drag a wire from a node that is in a group and drop it in empty space to create a debug node, the group expands to encompass it.
And if you drag a wire from a node in a group and drop it inside the boundary of another group, it becomes a member of that group instead.
This is all true in v4 too, and may well be by design.

While investigating what happens if you right click inside a group and Insert a node (it gets created but does not become a member of the group) I ended up with this which I can't get rid of.

1 Like

The intensely irritating tooltip on the palette no longer overlays the desktop.

Yay!

1 Like

Why is this not in version 5-beta.0

2 Likes

Perhaps the button assignment could be configurable by the user via settings ?
left mouse button behaviour > select/context/pan
right mouse button behaviour > select/context/pan
middle mouse button behaviour > select/context/pan

or enable panning when click/drag on background (non-nodes)
Personally i wouldnt mind right click/drag for multi node selection for example, but panning as primary left action. Or shift left click+drag (as 'standard' multi-select behaviour in many software)

Perhaps something to consider (although i have never missed it as i am used to the behaviour) - the default action to access the properties of a node/flow is to double click, and it is the only way to access them, perhaps also expose that via the context:

Great work btw, I like the look, it is very clean and the drag/drop is very nice, makes it easier to navigate and setup for the user.

When the palette is on the left but hidden, it would be nice if the icon then became floating with no dummy panel showing, but can imagine that this can become complex when dragging stuff around.

I actually never used the flows explorer, but now that i can move it to the left, it starts to make sense, now if only it immediately activates the flow when you click on a flow, it makes more sense, instead of clicking on the 'search' icon. (also not sure if it should 'open' the tree of nodes by default)

1 Like

Thanks for all the feedback. If I don't respond to your individual suggestion/comment, please be assured it has been seen and taken on board.

For this initial beta, I'd focussed on making it possible to rearrange the sidebars, but hadn't spent lots of time testing how they behave when on a different side to where they were originally intended to be. We'll fix up those issues as we go.

Ah, actually, you cannot turn on the grid in this version.

@TotallyInformation I can't reproduce that behaviour; the grid options are working as they always have here - and I can't think of any code changes that would have impacted that.

Why is this not in version 5-beta.0

@Frida because no-one has implemented it yet. There are a long list of items not in the beta, but still planned to be in the final 5.0.

2 Likes

I fired the beta up a 2nd time this morning and it didn't happen. So either a cache issue or something that goes away after first run. Knew I should have captured a screen recording at the time!

I newly installed RPiOS Trixie this morning, installed Node-red, turned off the grid and then updated to the beta.

Don't see any issues with showing and snapping to the grid.

1 Like

I find the palette node tooltip useful at times...

There are some spacing issues to work on. If the palette sidebar is variable width, it's a bit weird to force the nodes themselves in the old tiny width with line-wrapped labels.

On the config nodes sidebar, there's an alignment issue. The config nodes used to be center-aligned.

2 Likes

Thanks for the elaboration here! I agree with the points made. I would love to elaborate a bit on the design direction and the thoughts behind it. Also, laid out in the road to 5.0 blogpost.

First up, what we're trying to fix first is to align better with UI/UX standards and the goals of the user VS hierarchy of the UI sections. If the flow of the user going through the UI sections aligns with the goals of the user, we're in a good spot. Even better if we simplify it, though there is always a trade-off between configurability VS convention.

What has been achieved with this dev release, is the capability of moving things into a position in the Node-RED interface where they will be more meaningfully visually ordered.

It would be right to think about it as bringing it closer to an IDE like experience. IDE UI patterns generally but subtly follow better information hierarchy principles while leaving configurability to the end user. Especially allowing for L-to-R and R-to-L configurations depending on preference.

When we look at the classic Node-RED UI we can generally see a L-to-R mindset in the UI architecture: 1 influences 2, and 2 influences 3, etc.

The problem, however, is that a lot of content and ideas have ended up downstream in the UI and have been positioned in the place of least resistance meaning they ended up in number 4. Which, as Nick has stated, has become a collecting bucket for all kinds of content, including content that goes against the hierarchy order.

Generally speaking Node-RED has 4 areas. But if we look closer at the flow within these sections we can see that the order of things is not always aligned with the order of understanding the context. Hierarchy would state that you need number 1 to understand number 2, etc.

However, we can see that if we go from number 1 go to number 2 to see the deployment status, but of what? What is the context I need to understand the deployment status of? That is the next step, but number 2 doesn't lead me naturally to number 3. Why do I get to the deployment status first before being made to understand what it is about?

If we continue we can see that when we arrive at number 6, we are understanding what is defined in the sidebar we is down the ladder of hierachy. However, number 7 influences the canvas against the inferred direction of hierarchy. In the end this creates user confusion, especially for new users who are familiar with other tools but then find it hard to get started with Node-RED.

Here we can see that one of the main culprits, number 7 even hides (initially) a panel that we would naturally expect in that position: the debug panel:

With this in mind let's look at the example from the blogpost again. Here we can see we basically are trying to simplify to necessity of moving around the UI in order to ingest its meaning in a logical order. Where previously you had four areas, we now have three. A user does not need to move across the entire screen to find the next logical point to continue understanding. Plus at any point a user can take action without needing to understand the rest of the context: I don't need to understand the canvas view, if I am only interested in the outline, so I stay within area 1

This becomes more apparent when we swap the node palette with the info section in the UI concept:

Again to reiterate, what we gained is the ability to have modular sidebar panels and the ability to position sections out of the right sidebar to places where they are better aligned with user expectation and intentions.

PS: Love reading the feedback! Keep it coming

3 Likes

Wow! Didnt know you guys had all these techniques to design UI. Pretty dope. My recommendation was mostly biases from my user experiences from other tools, like Unity and Creality slicer

1 Like

Just deployed a test container without problems. Nice to see backwards compatibility in the settings.js .

Maybe I missed something, but is shift mouse scrolling not working anymore in the flow editor?
shift scroll scrolls horizontally in 4.1.2.
(I have seen spacebar + dragging the workspace.)
It does work when editing a function node for example.

Kr.
Jo.