Dashboard 2.0 Pre-Alpha Available

Hi All, just wanted to share an update that we, at FlowForge, have released the Dashboard 2.0 pre-alpha. It's still a work in progress, but wanted to put something out for people to start playing with.

We're open to issues, feature requests and PRs too if you're interested in getting involved.

Look forward to the feedback and you all giving it a go.

13 Likes

Can I install this as well as the current dashboard or can I only run it on a node-red instance that does not currently use node-red-dashboard?

Good question - I haven't actually tested this yet. If you're open to giving it a go, please let me know how it goes, the main thing to look at will be ensuring that the path of the ui-base in Dashboard 2.0 doesn't overlap with Dashboard 1.0

I had created an issue to do this task, was hoping to get to it today, but likely to be early next week now: Check Compatibility alongside Dashboard 1.0 · Issue #70 · flowforge/flowforge-nr-dashboard · GitHub

Since the widgets have the same names as on the current dashboard (ui-button etc) does that not mean that they cannot co-exist?

The underlying node names of dashboard classic ™ are ui_xxx, in v2 they are ux-xxx :slight_smile:

example

2 Likes

Oh yes, I had missed that. Which makes it odd that having installed dashboard 2 it seems to have hidden the original ui_text node. In the palette I see the new nodes followed by the old ones, but ui_text is missing, and when I deploy I get

The workspace contains some unknown node types:

* ui_text

Are you sure you want to deploy?

I have cleared the browser cache. I will uninstall dashboard 2 to make sure there is not something else going on.

Thanks for the feedback colin - it may well be a bug.

I am certain @joepavitt will appreciate an issue on the repo if it turns out they clash.

Done ui_text node (D1) missing when D2 installed alongside D1 · Issue #84 · flowforge/flowforge-nr-dashboard · GitHub

1 Like

Installed new pre alpha dashboard using pallete.

Created a page with text node. Did not change /ui.
Opened OG dashboard, redirected to new ui page. Went back change /ui to /dash.

Opening old dashboard redirect to new ...180/dash/ui-testing.
If i refreshed the page receive can not get /dash/ui-testing.

So removed the node and all unused configs.
Refreshed editor.
Opening Old dasboad url, redirects to /dash/... and shows text input box etc. The text input node was deleted and deployed.

So went to remove the alpha dash in pallette but says inuse, no nodes in any tabs or configs etc.

Then node-red crashed

Log
Jul 18:41:10 - [info] Added node types:
28 Jul 18:41:10 - [info]  - @flowforge/node-red-dashboard:ui-base
28 Jul 18:41:10 - [info]  - @flowforge/node-red-dashboard:ui-page
28 Jul 18:41:10 - [info]  - @flowforge/node-red-dashboard:ui-group
28 Jul 18:41:10 - [info]  - @flowforge/node-red-dashboard:ui-theme
28 Jul 18:41:10 - [info]  - @flowforge/node-red-dashboard:ui-text-input
28 Jul 18:41:10 - [info]  - @flowforge/node-red-dashboard:ui-button
28 Jul 18:41:10 - [info]  - @flowforge/node-red-dashboard:ui-dropdown
28 Jul 18:41:10 - [info]  - @flowforge/node-red-dashboard:ui-slider
28 Jul 18:41:10 - [info]  - @flowforge/node-red-dashboard:ui-text
28 Jul 18:41:10 - [info]  - @flowforge/node-red-dashboard:ui-chart
28 Jul 18:41:10 - [info]  - @flowforge/node-red-dashboard:ui-markdown
28 Jul 18:50:49 - [info] Stopping modified nodes
28 Jul 18:50:49 - [info] Stopped modified nodes
28 Jul 18:50:49 - [info] Updated flows
28 Jul 18:50:49 - [info] Starting modified nodes
28 Jul 18:50:49 - [info] [ui-base:New Dash] Created socket.io server bound to Node-RED port at path /ui/socket.io
28 Jul 18:50:49 - [info] [ui-page:Testing] UI Page Constructor
28 Jul 18:50:49 - [info] [ui-group:One] UI Page Constructor
28 Jul 18:50:49 - [info] Started modified nodes
28 Jul 18:51:42 - [info] Stopping modified nodes
28 Jul 18:51:42 - [info] Stopped modified nodes
28 Jul 18:51:42 - [info] Updated flows
28 Jul 18:51:42 - [info] Starting modified nodes
28 Jul 18:51:42 - [info] Started modified nodes
conn:AciLPjbT4QB_6ZRjAABz on:widget-load:71f41e5a36eeaed3 undefined
conn:AciLPjbT4QB_6ZRjAABz on:widget-change qq
conn:qSqCk3GJROMYQ4iNAAB3 on:widget-load:71f41e5a36eeaed3 { payload: 'qq', _msgid: 'f931fab8272485c6' }
28 Jul 18:53:37 - [info] Stopping modified nodes
Node-RED Closed 71f41e5a36eeaed3
28 Jul 18:53:37 - [info] Stopped modified nodes
28 Jul 18:53:37 - [info] Updated flows
28 Jul 18:53:37 - [info] Starting modified nodes
28 Jul 18:53:37 - [info] [ui-page:Testing] UI Page Constructor
28 Jul 18:53:37 - [info] [ui-group:One] UI Page Constructor
28 Jul 18:53:37 - [info] Started modified nodes
28 Jul 18:53:47 - [info] [ui-base:New Dash] Disconnected kG_Ox40tuZAPmOCZAABx due to transport close
28 Jul 18:53:47 - [info] [ui-base:New Dash] Disconnected AciLPjbT4QB_6ZRjAABz due to transport close
28 Jul 18:53:52 - [info] [ui-base:New Dash] Disconnected YivtimJ1mQ1Gqx9YAAB1 due to transport error
28 Jul 18:53:52 - [info] [ui-base:New Dash] Disconnected qSqCk3GJROMYQ4iNAAB3 due to transport error
conn:YlwE-spqVId_xZZNAAB7 on:widget-load:71f41e5a36eeaed3 undefined
28 Jul 18:54:24 - [info] [ui-base:New Dash] Disconnected Z0GLwyyfptwjVVo2AAB5 due to transport close
28 Jul 18:54:24 - [info] [ui-base:New Dash] Disconnected YlwE-spqVId_xZZNAAB7 due to transport close
conn:doC5mQg8SuphdbghAAB_ on:widget-load:71f41e5a36eeaed3 undefined
28 Jul 18:56:04 - [info] Stopping modified nodes
28 Jul 18:56:04 - [info] Stopped modified nodes
28 Jul 18:56:04 - [info] Updated flows
28 Jul 18:56:04 - [info] Starting modified nodes
28 Jul 18:56:04 - [info] Started modified nodes
28 Jul 18:56:14 - [info] [ui-base:New Dash] Disconnected PGiz2mrw0wO_F_eOAAB9 due to transport close
28 Jul 18:56:14 - [info] [ui-base:New Dash] Disconnected doC5mQg8SuphdbghAAB_ due to transport close
conn:ADJpnichW8J1g3ELAACD on:widget-load:71f41e5a36eeaed3 undefined
conn:ADJpnichW8J1g3ELAACD on:widget-change null
conn:ADJpnichW8J1g3ELAACD on:widget-change null
28 Jul 18:59:24 - [info] [ui-base:New Dash] Disconnected dpOC3pythEIXbQziAACB due to transport error
28 Jul 18:59:24 - [info] [ui-base:New Dash] Disconnected ADJpnichW8J1g3ELAACD due to transport error
28 Jul 19:03:19 - [info] Stopping modified nodes
Node-RED Closed 71f41e5a36eeaed3
28 Jul 19:03:19 - [info] Stopped modified nodes
28 Jul 19:03:19 - [info] Updated flows
28 Jul 19:03:19 - [info] Starting modified nodes
28 Jul 19:03:19 - [info] Started modified nodes
28 Jul 19:03:33 - [info] Stopping modified nodes
28 Jul 19:03:33 - [info] Stopped modified nodes
28 Jul 19:03:33 - [info] Updated flows
28 Jul 19:03:34 - [info] Starting modified nodes
28 Jul 19:03:34 - [info] Started modified nodes
28 Jul 19:06:53 - [red] Uncaught Exception:
28 Jul 19:06:53 - [error] TypeError: Cannot read properties of null (reading '_msg')
    at Socket.handler (/data/data/com.termux/files/home/.node-red/node_modules/@flowforge/node-red-dashboard/nodes/config/ui_base.js:275:93)
    at Socket.emit (node:events:511:28)
    at Socket.emitUntyped (/data/data/com.termux/files/home/.node-red/node_modules/socket.io/dist/typed-events.js:69:22)
    at /data/data/com.termux/files/home/.node-red/node_modules/socket.io/dist/socket.js:703:39
    at process.processTicksAndRejections (node:internal/process/task_queues:77:11)

[edit] Testing on termux android box nodejs 20, nod-red 3.0.2.
Found 2 configs Theme and base, deleted them, then was able to disable in pallette.
Will look again when next release version.

Is the spelling of one of those wrong? I.e. ui-testing vrs ui-testng (missing the i)

Missing i is just a posting typo.

1 Like

Thanks for giving this a go, and sorry you've hit issues with it. I suspect I know the problem, but winr be working now until Tuesday in order to address the issue.

If you're able to open an issue on the Dashboard repo, then that would be a great help. Or comment on the linked issue above for testing alongside Dashboard 1.0

Issue raised

No apology required, Thank you for your efforts.

Hello everyone,

you guys are doing a really great job and i'm really looking forward to the new dashboard.

I would appreciate if there was a part for manifest PWA configuration for Node-RED Dashboard.

This would support the use of a dashboard/app even better.

By that I mean the HTML part like:

<link rel="manifest" href="manifest.json" />

and the provision of the manifest.json directly via the dashboard.

{
  "name": "HackerWeb",
  "short_name": "HackerWeb",
  "start_url": ".",
  "display": "standalone",
  "background_color": "#fff",
  "description": "A readable Hacker News app.",
  "icons": [
    {
      "src": "images/touch/homescreen48.png",
      "sizes": "48x48",
      "type": "image/png"
    },
    {
      "src": "images/touch/homescreen72.png",
      "sizes": "72x72",
      "type": "image/png"
    },
    {
      "src": "images/touch/homescreen96.png",
      "sizes": "96x96",
      "type": "image/png"
    },
    {
      "src": "images/touch/homescreen144.png",
      "sizes": "144x144",
      "type": "image/png"
    },
    {
      "src": "images/touch/homescreen168.png",
      "sizes": "168x168",
      "type": "image/png"
    },
    {
      "src": "images/touch/homescreen192.png",
      "sizes": "192x192",
      "type": "image/png"
    }
  ],
  "related_applications": [
    {
      "platform": "play",
      "url": "https://play.google.com/store/apps/details?id=cheeaun.hackerweb"
    }
  ]
}

The dashboard can be started directly in the operating system as an app via the browser engine.

Source Info:
https://developer.mozilla.org/en-US/docs/Web/Manifest

Here an example of my own Node as a PWA Node-RED Application installed in Edge Browser:

1 Like

Hi @Padis welcome to the forum.

Great suggestion - could I trouble you to raise an issue on the repository so that it doesn't get lost?

1 Like

Just installed on a Oracle Cloud server running Ubuntu, Node-RED version: v3.0.2 and Node.js version: v16.20.0.
Installed OK, but had a problem with the Slider.
Visually, it's missing the 'continuously while sliding/only on release' option which appears to be defined here, and when I move the slider, it runs into a loop - see below.

mytest

Git issue 89 created.

1 Like

Thanks for trying it out @Paul-Reed

The option is commented out in the HTML. I'm in the process of porting over all of the options from Dashboard 1.0, but some I havent got round to all of them yet (that being one of them)

The bouncy behaviour is certainly unexpected though. Thanks for spotting and opening the GH issue!

3 Likes

The slider issue is now sorted in v0.0.6.

mytest

3 Likes

Just noticed when using the slider... that if the dashboard is refreshed (F5), the slider node emits it's current value again despite the slider position remaining unchanged.
That is inconsistent with the other UI node's behaviour.

I don't know whether this is new to 0.0.6, but for a text input node I see this in the editor

image

It has a note about setting Delay, but I don't see where to do that.

In case it is relevant, I also have dashboard 1 installed.