Changelog

Getting all the news on new features we ship

  • Managing devices

    Steve McLaughlin

    We have added bulk operations for managing devices.

    In this first iteration we have added the ability to delete multiple devices at once.

    To use this feature, navigate to the devices page, application devices or instance devices and place a check in the box next to the devices you wish to delete. Once you have selected the devices you wish to delete, click the trash can button above the table & confirm the deletion.

    We will be adding more bulk operations in the future, so keep an eye out for more updates.

    Deleting multiple devices

  • FlowFuse Assistant Writes JSON

    Steve McLaughlin

    The FlowFuse Assistant can now assist you by generating JSON.

    Wherever you edit JSON in the Rich Monaco Editor you will see the "Ask the FlowFuse Assistant 🪄" code lens. That includes the Inject Node, the Template Node and any contrib node that uses the built-in editor for writing JSON.

    We think you will find this to be a great time saver and a good helper when you are unsure of the syntax.

    Just ask for what you want and it does a decent job of figuring it out.

    Here are some examples:

    Asking the Assistant to generate JSON from within the template node

    Prompting from within the Template Node Resulting JSON

    Asking the Assistant to generate JSON from within the inject node for the payload value

    Prompting from within the Inject Nodes Typed Input Resulting JSON

    This is just the beginning of the FlowFuse Assistant's capabilities. Stay tuned!

    Updating the Assistant to get these new features

    If you are running Node-RED v4.x, head over to the Palette Manager, update the plugin and restart your instance.

    Updating assistant on Node-RED 4

    If you are still running Node-RED v3.x, you can update the plugin by adding @flowfuse/nr-assistant to the instance settings then restart it.

    Updating assistant on Node-RED 3

  • Persistent Storage on FlowFuse Cloud

    Ben Hardill

    Users of FlowFuse Cloud and self-hosted users on Kubernetes can now make use of a new persistent storage solution.

    Starting with the v2.6.0 release the Pods running the Node-RED Instances will have a Persistent Volume mounted on /data/storage in which files can be written. These files will persist for the lifetime of the Instance including across Susspend/Resume and Stack upgrades.

    This update means nodes like node-red-node-sqlite can be used to store data safely.

    This capability replaces the current FlowFuse FileServer which made use of custom versions of the Node-RED code File nodes to store and read files from a remote network store. However this didn't allow 3rd party nodes to also benefit from the storage provided.

    New instances created will default to use the new Persistent Storage volumes. If you want to upgrade an existing instance that uses the FileServer storage, get in touch with Support and we can help migrate your data over.

    Similar support for Docker will be available in later releases.

  • The FlowFuse Assistant

    Steve McLaughlin

    We are excited to announce the first release of The FlowFuse Assistant, a new plugin for your Node-RED instances designed to enhance your development experience.

    In this initial release, The FlowFuse Assistant can help you create function nodes for those times when a no-code solution is either not feasible or not possible. Additionally, it works directly inside the Function Node editor right where you need it.

    This is just the beginning. The FlowFuse Assistant will continue to evolve, with future updates bringing even more powerful features and enhancements.

    Starting from today, FlowFuse Assistant is available on FlowFuse Cloud. Users will need to update their instances to the latest stack to enable it.

    Node-RED Editor toolbar button for the assistant

    FlowFuse Assistant Input Dialog

    Flowfuse Assistant Code Lens

  • Immersive Editor Experience

    Joe Pavitt

    We found out that many users have to frequently switch between the Node-RED Editor and FlowFuse UI. This back-and-forth movement was often necessary to view logs, save snapshots, restart the Editor after updates, and perform other tasks.

    We're always seeking to reduce friction in the FlowFuse user experience, and as such, we've introduced a large overhaul of the developer experience for Node-RED when running in FlowFuse, in what we're calling the "Immersive Editor".

    Node-RED Editor toolbar button for the assistant

    Now, the instances tabs are all available in the same view as the Editor, and you can manage your instance, watch logs, capture snapshots and event restart it, all without leaving the Node-RED Editor.

    The new Immersive Editor is available for instances running Node-RED 4.0.2 or later - older versions of Node-RED will still use the separate views.

  • Multi-line Environment Variables

    Steve McLaughlin

    FlowFuse now supports the input of multi-line environment variables for your Node-RED instances running on FlowFuse.

    This unlocks the ability to store certs or multi-line values like JSON as environment variables.

    We've also improved the .env file import to support the use of multi-line values too.

    multiline environment variables

  • Running the Device Agent behind an HTTP proxy

    Nick O'Leary

    The FlowFuse Device Agent allows you to manage your Node-RED instances wherever you want them to run. It connects back to the platform over a secure https connection.

    For some enterprise customers, that has posed a challenge as they protect their network with an HTTP proxy that all traffic has to be directed to.

    With the 2.5.0 release of the Device Agent, we now support running the Device Agent behind a proxy - letting it run in even more locations.

    Support comes using the industry standard set of http_proxy environment variables - familiar to anyone running services behind a proxy.

    Full details are available in our http proxy documentation.

  • Compare Snapshots flows

    Steve McLaughlin

    We have now added the ability to select a snapshot and compare it to other snapshots making it easier to understand what is in the current snapshot and what has changed in relation to the 2nd snapshot.

    Both snapshots are overlayed and you can step through the differences or use the new slider to visualise the differences.

    Selecting a snapshot for comparison

    Comparing selected snapshot with another

  • Custom hostnames for your instances

    Nick O'Leary

    Enterprise teams on FlowFuse Cloud can now configure their own subdomain to point at their Node-RED application.

    Within FlowFuse Cloud, Node-RED instances are reached by their provided url: <name>.flowfuse.cloud.

    With this new option, it is possible to add a custom hostname for the instance that works alongside the provided url.

    For example, if you have built a dashboard you can now configure your instance to make that available via dashboard.example.com or any other subdomain you own.

    We only support subdomains at this time, but adding support for top-level domains is on the roadmap.

    Read more on how to setup custom hostnames.

  • Snapshot Upload

    Steve McLaughlin

    Snapshots are a point-in-time backup of Node-RED that can be used to easily revert back to previous version, or to push out to other instances and devices as part of our Pipelines feature.

    Following on from the recent work around snapshots to permit Instance Snapshot Downloads and Snapshot Uploads, we have now added the ability to download application device snapshots.

    This means you can download a snapshot from any device or instance and upload it to any device or instance on any FlowFuse instance.

    Also, to improve access to these actions, we have also updated the application and device snapshot table items menu to present all relevant snapshot actions.

    Application Snapshots

    Application Snapshots Table Menu

    Instance Snapshots

    Instance Snapshots Table Menu

    Device Snapshots

    Device Snapshots Table Menu

  • Snapshot Upload

    Steve McLaughlin

    Snapshots are a point-in-time backup of Node-RED that can be used to easily revert back to previous version, or to push out to other instances and devices as part of our Pipelines feature.

    As promised we have now provided a way for you to upload your locally downloaded snapshots.

    Upload snapshot

    This means you can now easily take a snapshot and move it between FlowFuse platforms or, if you prefer, automate it via the APIs it is built on.

    We hope you like this nifty little feature.

    Stay tuned as we expect the final peices in the overall Snapshot Improvements to be delivered in the coming days.

  • Snapshot Improvements

    Nick O'Leary

    Snapshots are a point-in-time backup of Node-RED that can be used to easily revert back to previous version, or to push out to other instances and devices as part of our Pipelines feature.

    We have lots planned to improve the overall workflow with snapshots, and have a couple updates to share that are available today.

    Viewing snapshot contents

    Following the work done to enable viewing flows in the Team Library, we've added the same capability to snapshots.

    Each snapshot now has a 'View Snapshot' option that will display the flows without having to open up the full Node-RED editor.

    Downloading snapshots

    We've also added the ability to download snapshots locally - allowing you to take your own offline backups of your flows.

    The 'Download Snapshot' option is currently available on Instance Snapshots, but we'll be rolling it out to all snapshot types in the near future. We are also working on an Import feature that will let you upload a snapshot back into the platform.

    Download snapshot

  • Managing Node-RED versions on Devices

    Nick O'Leary

    We have added the ability to manage the Node-RED version running on application-assigned Devices within FlowFuse.

    Ordinarily, a device will get its Node-RED version from the snapshot deployed to it. However, for an Application-assigned device, you may not yet have a snapshot to deploy.

    The new option, available under Device/Settings/Editor lets you pick what version of Node-RED the device should use - overriding what is in the active snapshot.

    For devices running v2.4.1 or later of the Device Agent, Node-RED will get updated when the setting is saved. For older versions of the Device Agent, it will require a new snapshot to be deployed to trigger the update.

  • Customizing instance health-check settings

    Nick O'Leary

    When running Node-RED within FlowFuse, the platform actively monitors the instances to make sure they are running smoothly and automatically restarts them if it detects a problem. It does this by regularly polling Node-RED to make sure it is still responsive.

    This provides protection for the case where a user's flows accidentally creates a tight loop in its code and locks up the runtime.

    We have to do this with care; it is entirely possible that a user's flows are intentionally doing some hard work that causes our health check to temporarily fail. For that reason, we only restart Node-RED if it fails a number of health-check polls in a row.

    But even with that in place, there are still edge cases where a user's flows need to do some really hard work that can exceed what the default health-check polling is configured to handle.

    We have now added the ability to customize how often we check the instance health. By default this is done every 7.5 seconds, but can now be extended via the instance settings.

    This will require the instance to be updated to the latest stack to enable the option.

    Health check interval in Instance settings

  • Team Library - Flow Viewer

    Joe Pavitt

    The Library feature allows you to save and share common functionality and flows across your team on FlowFuse. We've just added the ability to preview any flows saved here, making it easier to understand what they do and explore your collections of flows before importing them into your workspace.

    This new feature will better help you maintain and manage your team's shared flows, and give better visibility on flows that your fellow Team members are building.

    Example entry being visualized from the Team Library

  • Blueprints added to Library

    Joe Pavitt

    Back in October 2023, we introduced Blueprints to help you get started with your new Node-RED applications. We've now made them accessible directly from the Library sidebar, where you can explore the available Blueprints and use them to kick-start your new flows.

  • Dashboard 2.0: Milestones, PWA and New Components

    Joe Pavitt

    With a new release of Node-RED Dashboard 2.0 we have plenty of new fixes and improvements being added to the project. In this post, we'll deep dive into community contributions, PWA support, new Vuetify components, and the rest of the great work published in this latest release.

    read more...
  • Tougher Rate Limiting on Public Routes

    Nick O'Leary

    Running any service on the internet requires constant vigilence on security issues. One feature we've had in place for some time on FlowFuse Cloud is rate-limiting on our API. This limits how often someone can repeatedly call the API within a certain time frame.

    We want to make sure we deter any misbehaviour, without getting in the way of genuine access.

    For example, it would be entirely legitimate for a customer to use our API and automate some tasks via script. These API calls would arrive faster than if they were manually clicking around the FlowFuse UI, but that doesn't mean they should be restricted.

    We also look to areas of the API that could be misused - for example, anything that can trigger an email to be sent, such as the "I forgot my password" API.

    Tuning the rate-limiting is a continual process, and in that spirit we've recently made the rate limiting on certain routes to be much tougher and improved the feedback in the UI just in case a legitimate user accidentally hits it.

    The tougher limits act as a better deterent, which in turn makes the platform more secure.

  • Improving Device Groups

    Nick O'Leary

    Device Groups make it really simple to deploy a snapshot across multiple devices using our Pipelines feature. When the pipeline stage is triggered, you can watch as the snapshot is rolled out across all of target devices.

    We've updated the Device Group view to include more information about what snapshot is currently deployed to the group, and the deployment status of individual devices in the group.

    Summary details of all Device Groups in an application

    Summary details of all Device Groups in an application

    Details of all devices within a Device Group

    Details of all devices within a Device Group