{"id":26004,"library":"node-red-biglib","title":"node-red-biglib","description":"node-red-biglib is the core library for building high-volume Node-RED flow nodes that process data in 'blocks' (buffers). Version 1.3.4 is stable, with no recent updates since 2017. It provides helpers for memory control, buffer workflows, status propagation (color/message), and message reuse (_msgid, topic). Unlike standard Node-RED nodes, Big Nodes emphasize a second output for flow control and filter-by-default behavior. Dependencies include byline, filesize, and moment.","status":"maintenance","version":"1.3.4","language":"javascript","source_language":"en","source_url":"https://github.com/Jacques44/node-red-biglib","tags":["javascript","node-red","big"],"install":[{"cmd":"npm install node-red-biglib","lang":"bash","label":"npm"},{"cmd":"yarn add node-red-biglib","lang":"bash","label":"yarn"},{"cmd":"pnpm add node-red-biglib","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"simple line-by-line stream reader","package":"byline","optional":false},{"reason":"provides human readable file size","package":"filesize","optional":false},{"reason":"dates parsing/manipulation","package":"moment","optional":false}],"imports":[{"note":"This package is CommonJS only; no ESM support expected.","wrong":"import BigLib from 'node-red-biglib'","symbol":"BigLib","correct":"const BigLib = require('node-red-biglib')"},{"note":"The main export is the entire module; no named exports exist.","wrong":"const BigLib = require('node-red-biglib').BigLib","symbol":"biglib","correct":"const biglib = require('node-red-biglib')"},{"note":"BigNode is a property of the default export; Node-RED's function nodes require CommonJS.","wrong":"import { BigNode } from 'node-red-biglib'","symbol":"BigNode","correct":"const BigNode = require('node-red-biglib').BigNode"}],"quickstart":{"code":"const BigLib = require('node-red-biglib');\nconst BigNode = BigLib.BigNode;\n\n// Example: Create a simple big node\nmodule.exports = function(RED) {\n    function MyBigNode(config) {\n        RED.nodes.createNode(this, config);\n        BigNode.call(this, config);\n        this.on('input', function(msg) {\n            // Process blocks\n            const block = BigLib.createBlock(msg.payload, {});\n            this.sendBlock(block);\n        });\n    }\n    RED.nodes.registerType('my-big-node', MyBigNode);\n};","lang":"javascript","description":"Shows how to require the library, use BigNode constructor, and process blocks in a custom Node-RED node."},"warnings":[{"fix":"Only use within Node-RED custom node development.","message":"This library is designed for Node-RED and not intended for standalone use outside of Node-RED's runtime.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Refer to node-red-contrib-bigfile, node-red-contrib-bigcsv etc. for patterns.","message":"The documentation and API are not well documented; rely on Big Nodes child packages for usage examples.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Consider patching to use date-fns or Luxon instead, but be aware of breaking changes.","message":"Moment.js is deprecated and recommended to be replaced with modern date libraries.","severity":"deprecated","affected_versions":">=1.0.0"},{"fix":"If upgrading from 1.x, check child node packages for compatibility.","message":"Major version 2 may not be backward compatible; no official migration guide exists.","severity":"breaking","affected_versions":">=2.0.0 (if released)"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Use BigLib.Block or check actual exported properties (require('node-red-biglib')).","cause":"Incorrect import or use of a non-existent API; likely a typo or wrong symbol.","error":"TypeError: BigLib.createBlock is not a function"},{"fix":"Run 'npm install node-red-biglib' in the Node-RED home directory (~/.node-red).","cause":"Package not installed in the Node-RED user directory or global modules.","error":"Cannot find module 'node-red-biglib'"},{"fix":"Ensure proper usage: BigNode.call(this, config) inside node constructor.","cause":"BigNode not called with 'new' or not properly inherited.","error":"BigNode is not a constructor"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}