{"library":"node-red-iced-coffeescript","title":"Node-RED IcedCoffeeScript Node","description":"The `node-red-iced-coffeescript` package provides a custom node for the Node-RED low-code programming platform, enabling users to execute code written in IcedCoffeeScript within their flows. Node-RED is an open-source tool for wiring together hardware devices, APIs, and online services in event-driven applications, often used for IoT and automation. IcedCoffeeScript is a superset of CoffeeScript that introduced `await` and `defer` keywords for simplified asynchronous control flow, predating the native `async/await` features in modern JavaScript. This package, currently at version 1.0.7, effectively allows Node-RED flows to leverage IcedCoffeeScript's asynchronous syntax. However, given its last update was approximately nine years ago, and `iced-coffee-script` itself has not been updated in six years, the package is considered abandoned. Its primary differentiator, async handling, has been largely superseded by standard JavaScript capabilities. The package requires `iced-coffee-script` to be installed separately.","language":"javascript","status":"abandoned","last_verified":"Sun Apr 19","install":{"commands":["npm install node-red-iced-coffeescript"],"cli":null},"imports":["Install via npm, then drag the 'iced-coffeescript' node from the palette in the Node-RED editor.","Wire messages into the 'iced-coffeescript' node within a Node-RED flow to execute IcedCoffeeScript logic.","The Node-RED runtime automatically loads and registers the node's definition files (e.g., `.js` and `.html`) from the installed npm package."],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"# 1. Install Node-RED (if not already installed)\nsudo npm install -g --unsafe-perm node-red\n\n# 2. Start Node-RED\nnode-red\n\n# 3. In a new terminal, install the IcedCoffeeScript compiler globally (as recommended by the package README)\nsudo npm install -g iced-coffee-script\n\n# 4. Install the Node-RED IcedCoffeeScript node\nnpm install node-red-iced-coffeescript\n\n# 5. Restart Node-RED to load the new node\nnode-red\n\n// 6. Access the Node-RED editor (usually http://localhost:1880)\n// 7. Drag an 'Inject' node, an 'iced-coffeescript' node, and a 'Debug' node onto the canvas.\n// 8. Wire them together: Inject -> iced-coffeescript -> Debug.\n\n// 9. Double-click the 'iced-coffeescript' node to edit its code.\n//    Replace the default content with the following IcedCoffeeScript example:\n\n# IcedCoffeeScript code for the node:\nmsg.payload = \"Hello, IcedCoffeeScript!\"\n\n# Example of IcedCoffeeScript's async features (for context, if `defer` was relevant)\n# Not directly executable without an async operation, but demonstrates the syntax.\n# Assuming 'someAsyncFunction' exists and takes a callback:\n# someAsyncFunction (value) defer cb value\n# msg.payload = \"Async operation result: #{value}\"\n\nreturn msg\n\n// 10. Deploy the flow.\n// 11. Click the 'Inject' node button. Observe the output in the Debug sidebar.","lang":"coffeescript","description":"This quickstart guides you through setting up Node-RED, installing the `iced-coffee-script` compiler and the `node-red-iced-coffeescript` node, and demonstrates creating a basic Node-RED flow to execute simple IcedCoffeeScript code.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}