{"id":42359829,"url":"https://github.com/waldbaer/node-red-persistent-values","last_synced_at":"2026-01-27T17:07:01.918Z","repository":{"id":65493669,"uuid":"587054321","full_name":"waldbaer/node-red-persistent-values","owner":"waldbaer","description":"Nodes for user-friendly use of the Node-RED context stores.","archived":false,"fork":false,"pushed_at":"2025-11-02T11:26:27.000Z","size":571,"stargazers_count":2,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-11-02T13:13:24.698Z","etag":null,"topics":["node-red","persistency","persistent","persistent-storage"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/waldbaer.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-01-09T21:14:52.000Z","updated_at":"2025-11-02T11:26:30.000Z","dependencies_parsed_at":null,"dependency_job_id":"3dc052ec-cb84-45c1-babe-559b774ca3be","html_url":"https://github.com/waldbaer/node-red-persistent-values","commit_stats":{"total_commits":88,"total_committers":1,"mean_commits":88.0,"dds":0.0,"last_synced_commit":"899461c4516c9d025bc92bb7debed687da8ae15c"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/waldbaer/node-red-persistent-values","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waldbaer%2Fnode-red-persistent-values","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waldbaer%2Fnode-red-persistent-values/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waldbaer%2Fnode-red-persistent-values/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waldbaer%2Fnode-red-persistent-values/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/waldbaer","download_url":"https://codeload.github.com/waldbaer/node-red-persistent-values/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waldbaer%2Fnode-red-persistent-values/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28816581,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-27T12:25:15.069Z","status":"ssl_error","status_checked_at":"2026-01-27T12:25:05.297Z","response_time":168,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["node-red","persistency","persistent","persistent-storage"],"created_at":"2026-01-27T17:07:00.492Z","updated_at":"2026-01-27T17:07:01.913Z","avatar_url":"https://github.com/waldbaer.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Nodes for user-friendly use of the Node-RED context stores.\n\n[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)\n[![npm version](https://badge.fury.io/js/@waldbaer%2Fnode-red-persistent-values.svg)](https://badge.fury.io/js/@waldbaer%2Fnode-red-persistent-values)\n[![MIT License](https://img.shields.io/github/license/waldbaer/node-red-persistent-values?style=flat-square)](https://opensource.org/licenses/MIT)\n[![GitHub issues open](https://img.shields.io/github/issues/waldbaer/node-red-persistent-values?style=flat-square)](https://github.com/waldbaer/node-red-persistent-values/issues)\n[![GitHub Actions](https://github.com/waldbaer/node-red-persistent-values/actions/workflows/test.yml/badge.svg?branch=master)](https://github.com/waldbaer/node-red-persistent-values/actions/workflows/test.yml)\n[![Coverage Status](https://coveralls.io/repos/github/waldbaer/node-red-persistent-values/badge.svg?branch=master)](https://coveralls.io/github/waldbaer/node-red-persistent-values?branch=master)\n\nA user-friendly abstraction of the Node-RED context stores.\n\nThe idea behind persistent values is the user-friendly abstraction of the Node-RED core\n[context functionality](https://nodered.org/docs/user-guide/context).\nInstead of using a string name to access the context storage a central configuration node with\nall known persistent values is used.\n\nThe persistent values itself can then be comfortably accessed with nodes just referencing the central\nconfiguration and the persistent value to be accessed.\n\nPersistent values are typically states, configuration options etc. which shall survive a restart of Node-RED.\n\n# Features\n\n- Central configuration of all known persistent values (states, config options, ...).\n  - Dataypes: Bool, Number, String, JSON\n  - Default value\n  - Scope and Storage type\n  - Optional description\n- Node to read, write or reset a concrete persistent value referenced via the config.\n- Configurable `msg` property for input of new persistent value or output of the current value.\n- Configurable `msg` property for output of previous persisted value.\n- Append the current persistent value as object attribute to an configurable `msg` property.\n- Block further flow processing (no output) if the current value matches with a configured rule.\n- Dynamic override of configured command and value with `msg` properties.\n\n# Installation\nYou can install the nodes using the Node-RED 'Manage palette' in the side bar.\n\n\nOr run the following command in the root directory of your Node-RED installation\n\n```\nnpm install @waldbaer/node-red-persistent-values\n```\n[![NPM](https://nodei.co/npm/@waldbaer/node-red-persistent-values.png?downloads=true)](https://www.npmjs.com/package/@waldbaer/node-red-persistent-values)\n\n\n# Changelog\nChanges can be followed [here](/CHANGELOG.md).\n\n# Usage\n\n## Introduction\n\n1) Add all necessary values to be persisted (states, config options, ...) to one or multiple configuration nodes.\n\n   \u003cimg src=\"doc/images/usage_configuration.png\" title=\"Configuration Node\" width=\"600\" /\u003e\n\n2) Select the desired configuration and value for read / write operations.\n\n   \u003cimg src=\"doc/images/usage_node_configuration.png\" title=\"Value Node\" width=\"460\" /\u003e\n\n3) Read, write or collect the persistet values in your flows!\n\n   \u003cimg src=\"doc/images/usage_overview.png\" title=\"Overview\" width=\"800\" /\u003e\n\n\n## Examples\nImport into Node-RED instance via Node-RED -\u003e Import -\u003e Examples.\n\n\n# Development\n\n## Setup environment\n\n```\nnpm install --save-dev\n```\n\n### Format / Linter / Tests\n\n```\n# Check linter\nnpm run lint\n\n# Run all tests incl. coverage check\nnpm run coverage\n\n# Run subset of tests\nnpm run test -- -g \"\u003cfilter\u003e\"\n\n# Node-RED package verification\nnpm run node-red-dev-validate\n```\n\n### Update dependencies to latest versions\n\n```\n# Show outdated dependencies\nnpm outdated\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaldbaer%2Fnode-red-persistent-values","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwaldbaer%2Fnode-red-persistent-values","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaldbaer%2Fnode-red-persistent-values/lists"}