Skip to content

node-red

v5.0.0 Breaking

This release includes 3 breaking changes for platform teams planning a safe upgrade.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

flow-based-programming javascript low-code node-red openjs-foundation visual-programming

Affected surfaces

breaking_upgrade

Summary

AI summary

Updates Full changelog, https://nodered.org/blog/2025/12/03/node-red-roadmap-to-5, and 0.55.1 across a mixed release.

Full changelog

What's Changed

Node-RED 5.0 is the biggest change to the editor experience in the history of the project. Back in our roadmap post we set out four areas of focus - modernising the UX, improving node appearance, targeted functional enhancements, and updating our project infrastructure. After a long run of beta releases - and a huge amount of community feedback along the way - we're delighted to bring it all together in the final release.

  • Node-RED now requires Node.js 22.9 or later. At the time of release, we recommend running Node.js 24

Full changelog

  • Update sidebar UX by @knolleary in https://github.com/node-red/node-red/pull/5327
  • Prep dev branch for beta releases by @knolleary in https://github.com/node-red/node-red/pull/5367
  • Workspace pan/zoom updates by @knolleary in https://github.com/node-red/node-red/pull/5312
  • Update tour for 5-beta by @knolleary in https://github.com/node-red/node-red/pull/5370
  • Fix panning workspace on touchscreens by @knolleary in https://github.com/node-red/node-red/pull/5371
  • Update Sidebar UX by @knolleary in https://github.com/node-red/node-red/pull/5318
  • Add ability to use pfx or p12 file for TLS connection settings option by @dceejay in https://github.com/node-red/node-red/pull/4907
  • Update changelog for beta by @knolleary in https://github.com/node-red/node-red/pull/5375
  • Allow sidebar to be split into two panels by @knolleary in https://github.com/node-red/node-red/pull/5378
  • Update for beta.1 release by @knolleary in https://github.com/node-red/node-red/pull/5380
  • Add TLS certs/keys from Env Vars by @hardillb in https://github.com/node-red/node-red/pull/5376
  • Sync 4.1.3 changes to dev branch by @knolleary in https://github.com/node-red/node-red/pull/5445
  • add burst mode to delay node by @dceejay in https://github.com/node-red/node-red/pull/5391
  • UX updates for next beta by @knolleary in https://github.com/node-red/node-red/pull/5444
  • Add pause button to debug sidebar by @dceejay in https://github.com/node-red/node-red/pull/5390
  • Bump for 5beta2 by @knolleary in https://github.com/node-red/node-red/pull/5446
  • Sync rel414 to dev branch by @knolleary in https://github.com/node-red/node-red/pull/5469
  • Sync 4.1.5 to dev branch by @knolleary in https://github.com/node-red/node-red/pull/5481
  • Resync 4.1.6 to dev branch by @knolleary in https://github.com/node-red/node-red/pull/5504
  • Move location of new creds files to be next to flows (if they don't exist already in userdir) by @dceejay in https://github.com/node-red/node-red/pull/4951
  • 136 - Update color of inactive tabs to not appear disabled by @n-lark in https://github.com/node-red/node-red/pull/5510
  • Update Monaco to latest (0.55.1) by @Steve-Mcl in https://github.com/node-red/node-red/pull/5508
  • UX updates for beta 3 by @knolleary in https://github.com/node-red/node-red/pull/5498
  • Bump for beta3 release by @knolleary in https://github.com/node-red/node-red/pull/5514
  • Sync 4.1.7 to dev branch by @knolleary in https://github.com/node-red/node-red/pull/5531
  • [5525] UX: Misaligned first tab by @n-lark in https://github.com/node-red/node-red/pull/5536
  • [5521] UX: Selecting non-flow object in Explorer causes Info to go blank by @n-lark in https://github.com/node-red/node-red/pull/5538
  • [5523] UX: Cursor events in workspace get interrupted when over status/scroll bars by @n-lark in https://github.com/node-red/node-red/pull/5539
  • [5522] UX: vertical scrollbar should not overlap subflow toolbar by @n-lark in https://github.com/node-red/node-red/pull/5537
  • [5540] UX: handle node-red-dashboard css poisoning by @n-lark in https://github.com/node-red/node-red/pull/5548
  • Improve workspace footer handling of smaller screen widths by @knolleary in https://github.com/node-red/node-red/pull/5549
  • Editor loading improvements by @Steve-Mcl in https://github.com/node-red/node-red/pull/5541
  • Better touch handling for submenus by @knolleary in https://github.com/node-red/node-red/pull/5550
  • Fix fade effect for tab labels that overflow by @bonanitech in https://github.com/node-red/node-red/pull/5552
  • Account for sidebar width when calculating zoom-to-fit scale by @knolleary in https://github.com/node-red/node-red/pull/5551
  • [5377] UX: Ensure menus handle vertical overflow by @n-lark in https://github.com/node-red/node-red/pull/5448
  • Include sidebar width in position calculation for reveal function by @knolleary in https://github.com/node-red/node-red/pull/5555
  • Remove obsolete vendor-prefixed CSS properties by @bonanitech in https://github.com/node-red/node-red/pull/5554
  • Handle shift-scroll more robustly by @knolleary in https://github.com/node-red/node-red/pull/5559
  • Minor change to treeList select/expand behaviour by @knolleary in https://github.com/node-red/node-red/pull/5556
  • Update reveal node styling by @knolleary in https://github.com/node-red/node-red/pull/5562
  • Add error handling for markdown parser by @knolleary in https://github.com/node-red/node-red/pull/5560
  • Ensure disabled tab has fully dashed border by @knolleary in https://github.com/node-red/node-red/pull/5564
  • Scale highlight based on workspace zoom by @knolleary in https://github.com/node-red/node-red/pull/5563
  • Tidy up modal shade appearance by @knolleary in https://github.com/node-red/node-red/pull/5566
  • Improve the user-select CSS code usage by @bonanitech in https://github.com/node-red/node-red/pull/5565
  • Renable click to close for edit dialog by @knolleary in https://github.com/node-red/node-red/pull/5567
  • Various UX tweaks and tidy ups by @knolleary in https://github.com/node-red/node-red/pull/5570
  • Bump for 5-beta.4 release by @knolleary in https://github.com/node-red/node-red/pull/5571
  • Sync 4.1.8 to dev branch by @knolleary in https://github.com/node-red/node-red/pull/5587
  • Ensure edit dialog fills the tray by @knolleary in https://github.com/node-red/node-red/pull/5600
  • [3431] feature: Store sidebar width between editor sessions by @n-lark in https://github.com/node-red/node-red/pull/5605
  • [5374] UX: replace touch radial menu with standard context menu by @n-lark in https://github.com/node-red/node-red/pull/5614
  • [5602] UX: Unexpected tab border showing by @n-lark in https://github.com/node-red/node-red/pull/5607
  • [5603] UX: Header buttons shown whilst editor loading by @n-lark in https://github.com/node-red/node-red/pull/5606
  • [5617] Deploy Menu Redesign by @n-lark in https://github.com/node-red/node-red/pull/5619
  • Make scrollbar hitbox larger by @knolleary in https://github.com/node-red/node-red/pull/5576
  • Rework sidebars to be draggable by @knolleary in https://github.com/node-red/node-red/pull/5618
  • Ensure active tab is fully visible by @knolleary in https://github.com/node-red/node-red/pull/5624
  • Rework selected/hightlighted node appearance by @knolleary in https://github.com/node-red/node-red/pull/5623
  • [5621] UX: Fix styling of dragging sidebar panels by @n-lark in https://github.com/node-red/node-red/pull/5627
  • [5572] UX: Handle long instance title text by @n-lark in https://github.com/node-red/node-red/pull/5628
  • [5616] Add back in expand/collapse tabs for sidenavs by @n-lark in https://github.com/node-red/node-red/pull/5626
  • Fix node halo height calculation when status is shown by @knolleary in https://github.com/node-red/node-red/pull/5630
  • [5532] UX: Improve accessibility of default theme - colour palette by @n-lark in https://github.com/node-red/node-red/pull/5613
  • Pull master changes to dev by @knolleary in https://github.com/node-red/node-red/pull/5631
  • [5629] UX: Deploy menu: Restart Flows should not be faded by @n-lark in https://github.com/node-red/node-red/pull/5632
  • [5517] UX: Create default dark theme by @n-lark in https://github.com/node-red/node-red/pull/5625
  • Bump for 5-beta.5 release by @knolleary in https://github.com/node-red/node-red/pull/5633
  • [5636] V5, B5 : Sporadic Panel Height Calculations by @n-lark in https://github.com/node-red/node-red/pull/5638
  • [5634] Junctions and ports on hover disappear with light theme by @n-lark in https://github.com/node-red/node-red/pull/5635
  • Remove unslightly gap in the debug sidebar by @knolleary in https://github.com/node-red/node-red/pull/5639
  • Fix multiplayer icon appearance by @knolleary in https://github.com/node-red/node-red/pull/5640
  • Tighten select halo margin by @knolleary in https://github.com/node-red/node-red/pull/5651
  • [5644] UX: Address dark theme feedback from latest beta release by @n-lark in https://github.com/node-red/node-red/pull/5646
  • [5649] Accessibility - Viewports, language attributes, and tabIndex by @n-lark in https://github.com/node-red/node-red/pull/5650
  • [5647] Accessibility - Names and labels by @n-lark in https://github.com/node-red/node-red/pull/5648
  • Remove SASS variables marked as deprecated by @bonanitech in https://github.com/node-red/node-red/pull/5642
  • Use a token exchange pattern for OAuth logins by @knolleary in https://github.com/node-red/node-red/pull/5657
  • [5653] Accessibility — Attributes by @n-lark in https://github.com/node-red/node-red/pull/5655
  • Remove default admin cors rules by @knolleary in https://github.com/node-red/node-red/pull/5652
  • Remove aria label application from popover by @knolleary in https://github.com/node-red/node-red/pull/5654
  • Sync master updates to dev by @knolleary in https://github.com/node-red/node-red/pull/5664
  • [5534] UX: create mechanism for themes to provide multiple variants by @n-lark in https://github.com/node-red/node-red/pull/5659
  • Use req.hostname in https redirect to ensure proxy trust is maintained by @knolleary in https://github.com/node-red/node-red/pull/5666
  • [5674] UX: pointer-event deadzone in the tab bar by @n-lark in https://github.com/node-red/node-red/pull/5675
  • Remove Grunt as the task runner by @knolleary in https://github.com/node-red/node-red/pull/5669
  • Introduce eslint by @knolleary in https://github.com/node-red/node-red/pull/5671
  • Update some dev dependencies to clear audit noise by @knolleary in https://github.com/node-red/node-red/pull/5673
  • Update to latest npm by @knolleary in https://github.com/node-red/node-red/pull/5677
  • Set minimum node.js version to 22.9 by @knolleary in https://github.com/node-red/node-red/pull/5678
  • [5658] ctrl+space shortcut isn't always firing by @n-lark in https://github.com/node-red/node-red/pull/5670
  • Only connect websocket client if need to by @dceejay in https://github.com/node-red/node-red/pull/5533
  • Invert selected tab button border color to improve contrast by @knolleary in https://github.com/node-red/node-red/pull/5681
  • Remove reveal on hover in search results and provide button by @knolleary in https://github.com/node-red/node-red/pull/5684
  • Do not show section title if all options are hidden by @knolleary in https://github.com/node-red/node-red/pull/5689
  • [5683] No discernible outline on junctions and node ports in dark mode in NR5 + lighten shade color by @n-lark in https://github.com/node-red/node-red/pull/5691
  • Clip user profile image to the round button in the header by @knolleary in https://github.com/node-red/node-red/pull/5690
  • Ensure png icon is centrally aligned on first layout by @knolleary in https://github.com/node-red/node-red/pull/5688
  • Fix build scripts for windows by @knolleary in https://github.com/node-red/node-red/pull/5687
  • Defining utility functions for re-use in a function node by @Steve-Mcl in https://github.com/node-red/node-red/pull/5494
  • Allow TLS SNI Server name to be set in the http-request node by @hardillb in https://github.com/node-red/node-red/pull/5667
  • Update for 5-beta.6 release by @knolleary in https://github.com/node-red/node-red/pull/5692
  • [5695] Dropping a node over certain buttons in the footer toolbar causes those buttons to execute (NR5) by @n-lark in https://github.com/node-red/node-red/pull/5700
  • [5696] editorTheme.header.title: long values clip without ellipsis, and misalign when header.url is set by @n-lark in https://github.com/node-red/node-red/pull/5697
  • [5693 + 5699] Aligning Dark Theme with Light Theme's SCSS Structure + node.status fill of blue is shown as red in dark theme by @n-lark in https://github.com/node-red/node-red/pull/5694
  • [5702] UX: Sidebar tab buttons do not show focus indicator when clicking on them by @n-lark in https://github.com/node-red/node-red/pull/5710
  • Redraw halo if node status changes by @knolleary in https://github.com/node-red/node-red/pull/5708
  • [5704] UX: Deploy menu dropdown icon appears too inactive by @n-lark in https://github.com/node-red/node-red/pull/5711
  • Improve view navigator interaction by @knolleary in https://github.com/node-red/node-red/pull/5709
  • Sync master by @knolleary in https://github.com/node-red/node-red/pull/5716
  • Sync master by @knolleary in https://github.com/node-red/node-red/pull/5726
  • Overlay status above selection halo by @knolleary in https://github.com/node-red/node-red/pull/5736
  • Refactor workspace grid to use single pattern definition by @Steve-Mcl in https://github.com/node-red/node-red/pull/5735
  • Feat: Show rendered info upon node/group note annotation badge click by @Steve-Mcl in https://github.com/node-red/node-red/pull/5730
  • Enable badge annotations on groups by @Steve-Mcl in https://github.com/node-red/node-red/pull/5729
  • Standardize popover colors by @knolleary in https://github.com/node-red/node-red/pull/5738
  • Sort node lists alphabetically by @knolleary in https://github.com/node-red/node-red/pull/5739
  • Tidy up popover appearance by @knolleary in https://github.com/node-red/node-red/pull/5740
  • Add support for GH style blockquote alerts by @Steve-Mcl in https://github.com/node-red/node-red/pull/5733
  • Shrink popover height if not sufficient vertical space by @knolleary in https://github.com/node-red/node-red/pull/5741
  • Align sidebar toggle actions by @knolleary in https://github.com/node-red/node-red/pull/5742
  • Move notifications bar to below tab bar by @knolleary in https://github.com/node-red/node-red/pull/5743
  • Rework search statusBar by @knolleary in https://github.com/node-red/node-red/pull/5744
  • Tidy up import error popover by @knolleary in https://github.com/node-red/node-red/pull/5745
  • Group sidebar tab buttons by @knolleary in https://github.com/node-red/node-red/pull/5747
  • Fix subflow virtual port halo sizing by @knolleary in https://github.com/node-red/node-red/pull/5748
  • [5712] Accessibility - Buttons and links missing accessible names by @n-lark in https://github.com/node-red/node-red/pull/5713
  • Do not adjust focus when navigating search results by @knolleary in https://github.com/node-red/node-red/pull/5749
  • Fix svg tooltip text alignment by @knolleary in https://github.com/node-red/node-red/pull/5753
  • Ensure quick-add aligns nodes and junctions to the grid by @knolleary in https://github.com/node-red/node-red/pull/5759
  • Fix error handling for linkcall in function node by @Steve-Mcl in https://github.com/node-red/node-red/pull/5755
  • Standardize the scrollbar colors by @bonanitech in https://github.com/node-red/node-red/pull/5750
  • Add alert types toolbar functionality to markdown editor by @Steve-Mcl in https://github.com/node-red/node-red/pull/5757
  • Do not show context menu if in the middle of another action by @knolleary in https://github.com/node-red/node-red/pull/5763
  • Ensure hidden tabs are restored on reload by @knolleary in https://github.com/node-red/node-red/pull/5762
  • Resync master to dev branch by @knolleary in https://github.com/node-red/node-red/pull/5774
  • Sync rel4111 to dev by @knolleary in https://github.com/node-red/node-red/pull/5782
  • Add missing core actions by @knolleary in https://github.com/node-red/node-red/pull/5777
  • Welcome tour v5 by @knolleary in https://github.com/node-red/node-red/pull/5784
  • Align unknown node style by @knolleary in https://github.com/node-red/node-red/pull/5785
  • Do not alter button text for active/focus if its the primary button by @knolleary in https://github.com/node-red/node-red/pull/5787
  • Add support for installing ESM module nodes by @hlovdal in https://github.com/node-red/node-red/pull/4355
  • Bump for 5.0 final release by @knolleary in https://github.com/node-red/node-red/pull/5789
  • Add French translations for 5.0.0 by @GogoVega in https://github.com/node-red/node-red/pull/5641
  • Synchronize dev branch to master for 5.0 release by @knolleary in https://github.com/node-red/node-red/pull/5790

Full Changelog: https://github.com/node-red/node-red/compare/4.1.11...5.0.0

Breaking Changes

  • Minimum Node.js version increased to 22.9 (requires upgrade from earlier runtimes)
  • Sidebar panels are now draggable, changing interaction behavior
  • Removed Grunt as the task runner and replaced it with ESLint for build linting

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track node-red

Get notified when new releases ship.

Sign up free

About node-red

Low-code programming for event-driven applications

All releases →

Related context

Beta — feedback welcome: [email protected]