Node-REDの公式ダッシュボードの後継であるFlowFuse版でマルチユーザを実現する

# 背景

### 公式のNode-REDのダッシュボードとは？
これ

https://flows.nodered.org/node/node-red-dashboard

出た当初からマルチユーザを対象としていない
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/28e50fe2-a19f-4520-8a36-cd9aa8a9a652.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/f13b4682-c284-4275-9af4-47b627ee78e6.png)
ただし、通知用の一部のパーツは対応していたが・・・


### 複数のユーザに対応していないとは？

例) 選択を変えたら表示している全員の表示が替わる

1.別々のユーザが同じダッシュボードを見る
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/35164406-4519-4e53-a437-b40b86fd6965.png)

2.左のユーザがドロップダウンリストから選択すると
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/dc6f70f3-298e-4131-932b-95c6e5c81dff.png)

3.右のユーザのドロップダウンリストも変わってしまう
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/998a5822-e796-4d1a-b094-f2e59bc145a1.png)

こういった選択は各ユーザ毎に異なるし、勝手に表示を変えることは避けたいものである

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/1c7d9e50-3732-4d09-a2ad-e1f39f748b63.png" width="150">
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/fa02266e-a242-4d9e-9dcf-2c65617cf938.png" width="160">
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/c2a39af6-e9a8-4e0f-8099-ca382194bd5b.png" width="179">

### 公式ダッシュボードでユーザ毎に表示を切り替えたい場合

・各ユーザ毎にタブページを作る
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/37f719db-1d33-439a-bdea-d78655f725de.png)

こうすると少なくとも2人(または2か所)で別々のページを見ることでお互い影響を与えないということはできる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/4c4fdd98-7367-4492-a763-cd800754fa25.png)

ただし、この方法は極小規模ユーザでしか運用は難しい

公式のダッシュボードからフォークされ、マルチユーザに対応しようとした
node-red-contrib-mdashboard
というライブラリはあるが、ベータ版扱いかつ現在はアーカイブされている。



# マルチユーザに対応したFlowFuse版ダッシュボード

https://flows.nodered.org/node/@flowfuse/node-red-dashboard

### ダウンロード比較

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/94f20429-c857-4f4b-bce5-fba666d0c326.png)

2025年5月18日時点ではさすがにまだかなわないが、今から使うならFlowFuse版ダッシュボードのほうが良い理由ある。

### 公式版ダッシュボードの誘導
ライブラリ画面ではまだ出てないが、Github上では以下のアナウンスがされている
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/1503ad49-4c4d-458e-8160-4f5fb2b7a890.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/441ed006-8c5b-469a-ad18-903a239082e9.png)

公式版はすでに非推奨となっている。
代替手段の一つとしてFlowFuse版ダッシュボードが挙げられている
UIBUILDERも挙げられているが、思想が異なり、使い勝手も違いそうなので今回は使用しない
一応UIBUILDER側で比較は行っているのでご参考に(ただし第三者ではないので偏ったひかｋ)
https://totallyinformation.github.io/node-red-contrib-uibuilder/#/using/compare-d2



### マルチユーザを実現する
デフォルトの設定状態はマルチユーザではない
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/a3935547-c3a0-4e3b-9d3f-9c7f32db72c4.png)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/05649c2b-2ed1-4626-a669-83f263b99fc4.png)


マルチユーザで使う用の設定はダッシュボード2.0を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/8df605c6-8685-4c37-a772-63201e693fec.png)

Client DataタブのAccept Client Dataのチェックボックスにマルチユーザ対応させるnodeを選択する

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/8c1a5fc5-e291-4962-a923-381ea8aad9fb.png)　![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/bb8285a7-9cd6-477a-bdb8-5cba9fb6a3fa.png)

今回のパーツはui-dropdownなのでこれだけを選択してデプロイする
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/54c1dafe-3f53-4d65-a07b-631a5d6765d2.png)

今度は右側から選択肢を変更する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/8419e706-91f8-4bc8-9882-2890ed29a7ef.png)

左のユーザに右のユーザの愛は伝わりませんでした
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/345260/1b32e365-4327-4210-a189-a469c9616140.png)

# まとめ
今から使うならFlowFuse版のダッシュボードを使うべき
でも公式ダッシュボートとの互換性を意識したライブラリなので、設定を変えないと部品単位でマルチユーザにならないので注意