๐”– Scriptorium
โœฆ   LIBER   โœฆ

๐Ÿ“

Practical Node-RED Programming: Learn powerful visual programming techniques and best practices for the web and IoT

โœ Scribed by Taiji Hagino


Publisher
Packt Publishing
Year
2021
Tongue
English
Leaves
326
Edition
1
Category
Library

โฌ‡  Acquire This Volume

No coin nor oath required. For personal study only.

โœฆ Synopsis


Use a low-code programming approach to create event-driven applications from scratch by wiring together hardware devices, APIs, and online services

Key Features

  • Discover how you can automate the Internet of Things (IoT) without writing huge blocks of code
  • Learn how to wire together flows using a browser-based visual editor
  • Handle IoT data with little to no coding knowledge

Book Description

Node-RED is a free and open source flow-based programming tool used to handle IoT data that allows programmers of any level to interconnect physical I/O, cloud-based systems, databases, and APIs to build web applications without code.

Practical Node-RED Programming is a comprehensive introduction for anyone looking to get up to speed with the Node-RED ecosystem in no time. Complete with hands-on tutorials, projects, and self-assessment questions, this easy-to-follow guide will help you to become well versed in the foundations of Node-RED. Youโ€™ll learn how to use Node-RED to handle IoT data and build web applications without having to write complex code. Once youโ€™ve covered the basics, youโ€™ll explore various visual programming techniques and find out how to make sample flows as you cover web development, IoT development, and cloud service connections, and finally build useful real-world applications.

By the end of this book, youโ€™ll have learned how to use Node-RED to develop a real-world application from scratch, which can then be implemented in your business.

What you will learn

  • Understand the history of Node-RED and why you need to learn a flow-based programming tool
  • Use Node-RED to build Node.js-based applications
  • Handle data for IoT devices using Node-RED flows
  • Explore advanced Node-RED features such as connecting repositories and customizing the flow editor
  • Find out what the MQTT protocol is and how it relates to Node-RED
  • Create and publish your own nodes and flows using the Node-RED library

Who this book is for

This Node-RED book is for web developers and IoT engineers with some background in JavaScript and Node.js. Although not necessary, familiarity with the concepts of electronics will help you to make the most out of this book.

Table of Contents

  1. Introducing Node-RED and Flow-based programming
  2. Setting up the Development Environment
  3. Understanding Node-RED characteristics by creating basic flows
  4. Learning the Major Nodes
  5. Implementing Node-RED locally
  6. Implementing Node-RED in the Cloud
  7. Calling a Web API from Node-RED
  8. Using the Project Feature with Git
  9. Creating a ToDo application with Node-RED
  10. Handling sensor data on the Raspberry Pi
  11. Visualize data by creating a server-side application in the IBM cloud
  12. Developing a Chatbot Application Using Slack and IBM Watson
  13. Creating and publishing your own node on the Node-RED library

โœฆ Table of Contents


Cover
Title Page
Copyright and Credits
Dedication
Forword
Contributors
Table of Contents
Preface
Section 1: Node-RED Basics
Chapter 1: Introducing Node-RED and Flow-Based Programming
What is FBP?
Workflows
Flow-based programming (FBP)
What is Node-RED?
Overview
Flow editor and runtime
History and origin of Node-RED
Node-RED benefits
Simplification
Efficiency
Common
High quality
Open source
Node-RED library
Various platforms
Node-RED and IoT
Node-RED and IoT
Summary
Chapter 2: Setting Up the Development Environment
Technical requirements
Installing npm and Node.js for Windows
Installing npm and Node.js for Mac
Installing npm and Node.js for Raspberry Pi
Installing Node-RED for Windows
Installing Node-RED for Mac
Installing Node-RED for Raspberry Pi
Summary
Chapter 3: Understanding Node-RED Characteristics by Creating Basic Flows
Technical requirements
Node-RED Flow Editor mechanisms
Using the Flow Editor
Making a flow for a data handling application
Importing and exporting a flow definition
Summary
Chapter 4: Learning the Major Nodes
Technical requirements
What is a node?
How to use nodes
Common category
Function category
Getting several nodes from the library
Summary
Section 2: Mastering Node-RED
Chapter 5: Implementing Node-RED Locally
Technical requirements
Running Node-RED on a local machine
Using the standalone version of Node-RED
Using IoT on edge devices
Making a sample flow
Use case 1 โ€“ light sensor
Use case 2 โ€“ temperature/humidity sensor
Making a flow for use case 1 โ€“ light sensor
Making a flow for use case 2 โ€“ temperature/humidity sensor
Summary
Chapter 6: Implementing Node-RED in the Cloud
Technical requirements
Running Node-RED on the cloud
What is the specific situation for using Node-RED in the cloud?
IoT case study spot on the server side
Use case 1 โ€“ Storing data
Use case 2 โ€“ Temperature/humidity sensor
Making a sample flow
Making a flow for use case 1 โ€“ storing data
Making a flow for use case 2 โ€“ visualizing data
Summary
Chapter 7: Calling a Web API from Node-RED
Technical requirements
Learning about the RESTful API
Learning about the input/output parameters of a node
How to call the web API on a node
Creating an account
Creating an API key
Checking the API endpoint URL
Checking that the API can run
Creating the flow calling the API
How to use the IBM Watson API
Logging in to IBM Cloud
Starting Node-RED on IBM Cloud
Creating the Watson API
Connecting Node-RED and the Tone Analyzer service
Creating the flow by calling the Tone Analyzer API
Testing the flow
Summary
Chapter 8: Using the Project Feature with Git
Technical requirements
Enabling the project feature
Using the Git repository
Accessing project settings
Connecting a remote repository
Summary
Section 3: Practical Matters
Chapter 9: Creating a ToDo Application with Node-RED
Technical requirements
Why you should use Node-RED for web applications
Creating a database
How to connect to the database
Configuring Node-RED
Cloning the Node-RED Project
Configuring the Node-RED and CouchDB connection
Running the application
Summary
Chapter 10: Handling Sensor Data on the Raspberry Pi
Technical requirements
Getting sensor data from the sensor module on the Raspberry Pi
Preparing the devices
Checking Node-RED to get data from the sensor device
Learning the MQTT protocol and using an MQTT node
Connecting to an MQTT broker
Mosquitto
Preparing Mosquitto on your Raspberry Pi
Making a flow to get sensor data and send it to the MQTT broker
Checking the status of data on the localhost
Summary
Chapter 11: Visualize Data by Creating a Server-Side Application in the IBM Cloud
Technical requirements
Preparing a public MQTT broker service
Publishing the data from Node-RED on an edge device
Subscribing and visualizing data on the cloud-side Node-RED
Preparing Node-RED on the IBM Cloud
Visualization of the data on the IBM Cloud
Summary
Chapter 12: Developing a Chatbot Application Using Slack and IBM Watson
Technical requirements
Creating a Slack workspace
Creating a Watson Assistant API
Enabling the connection to Slack from Node-RED
Building a chatbot application
Summary
Chapter 13: Creating and Publishing Your Own Node on the Node-RED Library
Technical requirements
Creating your own node
Node program development
Node packaging
Testing your own node in a local environment
Node installation
Node customization
Publishing your own node as a module in the Node-RED Library
Publishing the node you created
Deleting the node you published
Installing the node you published
Summary
Appendix: Node-RED User Community
Node-RED Community Slack
Node-RED Forum
Japan User Group
Why subscribe?
About Packt
Other Books You May Enjoy
Index


๐Ÿ“œ SIMILAR VOLUMES


Practical Node-RED Programming: Learn po
โœ Taiji Hagino ๐Ÿ“‚ Library ๐Ÿ“… 2021 ๐Ÿ› Packt Publishing ๐ŸŒ English

<p><b>Use a low-code programming approach to create event-driven applications from scratch by wiring together hardware devices, APIs, and online services</b></p><h4>Key Features</h4><ul><li>Discover how you can automate the Internet of Things (IoT) without writing huge blocks of code</li><li>Learn h

Expert Python Programming: Master Python
โœ Michal Jaworski, Tarek Ziadรฉ ๐Ÿ“‚ Library ๐Ÿ“… 2021 ๐Ÿ› Packt Publishing ๐ŸŒ English

Attain a deep understanding of building, maintaining, packaging, and shipping robust Python applications Key Features โ€ข Discover the new features of Python, such as dictionary merge, the zoneinfo module, and structural pattern matching โ€ข Create manageable code to run in various environments wit

Expert Python Programming: Master Python
โœ Michaล‚ Jaworski, Tarek Ziadรฉ ๐Ÿ“‚ Library ๐Ÿ“… 2021 ๐Ÿ› Packt Publishing ๐ŸŒ English

Code <p><b>Attain a deep understanding of building, maintaining, packaging, and shipping robust Python applications</b></p><h4>Key Features</h4><ul><li>Discover the new features of Python, such as dictionary merge, the zoneinfo module, and structural pattern matching</li><li>Create manageable code

Practical Java Programming for IoT, AI,
โœ Perry Xiao ๐Ÿ“‚ Library ๐Ÿ“… 2019 ๐Ÿ› Wiley ๐ŸŒ English

Learn practical uses for some of the hottest tech applications trending among technology professionals We are living in an era of digital revolution. On the horizon, many emerging digital technologies are being developed at a breathtaking speed. Whether we like it or not, whether we are ready or

Practical Javaยฎ Programming for IoT, AI,
โœ Perry Xiao ๐Ÿ“‚ Library ๐Ÿ“… 2019 ๐Ÿ› Wiley ๐ŸŒ English

We are living in an era of digital revolution. On the horizon, many emerging digital technologies are being developed at a breathtaking speed. Whether we like it or not, whether we are ready or not, digital technologies are going to penetrate more and more, deeper and deeper, into every aspect of ou