Unlocking full-stack development with Node.js

Node.js. is an open source JavaScript runtime environment designed to build modern
scalable applications. Node.js enables developers to run JavaScript outside the browser,
facilitating web development across back ends and front ends.

Building applications with Node.js

The Node.js reference architecture is being actively maintained by those within Red Hat and IBM who are engaged in the Node.js community, provide consulting advice and development related to Node.js for customers or have large-scale Node.js deployments.

The goal of the Node.js reference architecture is to present the team's “opinion” on what components our developers and internal teams should use when building Node.js applications and guidance for how to be successful in production with those components.

The components in this architecture are what we recommend to help internal and external customers get started based on our experience. Other components may be equally good, but these are the ones we know best.

Logging in Node.js

 

Logging in Node.js

Understand what tools to use for logging in your Node.js applications.

Logging in Node.js

 

Code consistency in Node.js

Writing consistent code and how to enforce it with a linter tool like ESLint.

GraphQL in Node.js

 

GraphQL in Node.js

Recommendations for using GraphQL in your Node.js applications.

Building good containers.png

 

Building good containers

Recommendations based on our experience building Node.js applications in containers for deployments.

Choosing web frameworks.png

 

Choosing web frameworks

Readiness probes allow Kubernetes to inspect the health of your application pod. 

Code coverage.png

 

Code coverage

Learn how to measure code coverage, how to maximize your investment in testing.

TypeScript.png

 

TypeScript

Why you might want to use TypeScript and how to get started.

Securing Node.js applications.png

 

Securing Node.js applications

Key elements of building security into your software development process to make robust Node.js apps.

Accessibility_0.png

 

Accessibility

Overview of some key areas that Node.js developers need to understand about accessibility

Understand typical development workflows when building tools and processes

Developer Tools

 

npm development

Recommendations for creating and publishing your modules

Problem determination.png

 

Problem determination

Minimize problems in production and investigating common problems when they do occur

testing.png

 

Testing

A look at testing in the Node.js landscape and discuss the recommendations

Transaction handling.png (

 

Transaction handling

Completing more than a single update as an atomic unit (transaction) is needed to preserve data integrity

Load balancing, threading, and scaling in Node.js__0.png

 

Load balancing, threading, and scaling in Node.js

Managing the need for larger computational resources in your Node.js applications

CD best practices in Node.js_.png

 

 CI/CD best practices in Node.js

CI/CD practices for testing on code check-in and the use of a container pipeline

Red Hat & Node.js

Red Hat has been an active contributor to the Node.js project and the larger OpenJS Foundation community since 2013. Our team supports Node.js and JavaScript community work in many different ways. Red Hat is working in areas that are important to our customers including diagnostics, platform support, stable and predictable releases and more, while at the same time working to ensure that Node.js is well supported on Red Hat Enterprise Linux and OpenShift.


To learn more about Node.js and our work at Red Hat, we invite you to read through the sections on this page and the pointers to additional information that they provide.

 

Learn more 

 

Get started with Node.js on OpenShift

>_ Lesson

Develop with Node.js on OpenShift

25 minutes | Intermediate

Take an existing sample Node.js application and modify it to address microservice concerns, deploy it to OpenShift, and exercise interfaces between Node.js, microservices, and Kubernetes.

Start  

>_ Lesson

Developing with odo

10 minutes | Beginner

Use OpenShift Do (odo), a CLI tool for developers, to manage application components on the OpenShift Container Platform.

Start  

>_ Lesson

Developing with Node.js on Kubernetes

10 minutes | Beginner

An introduction to cloud-native development with Node.js by walking users through the steps to create and extend an Express.js based application to leverage cloud capabilities.

Start  

Learn Node.js

Sandbox javascript activity

Deploy JavaScript applications to the Developer Sandbox: Part 1

Learn how to deploy a full-stack JavaScript application in an OpenShift cluster.

 

Learn More 

OpenShift

Developing with Node.js

This track provides an introduction to cloud-native development with Node.js by walking you through how to extend an Express.js-based application to leverage cloud capabilities.

 

Learn More 

Latest articles about Node.js

Node.js reference architecture
Feb 21, 2024

Run Node.js applications on the edge with RHEL and Fedora

Michael Dawson

Learn how to run Node.js applications at the network edge with Red Hat...

Node.js reference architecture
Jan 03, 2024

Introduction to the Node.js reference architecture: Wrapping up

Lucas Holmquist

With the conclusion of the Node.js reference architecture series, find out...

Node.js reference architecture
Nov 01, 2023

CI/CD best practices in Node.js

Lucas Holmquist

This article offers guidance on continuous integration/continuous delivery...

Featured image for Node.js.
Oct 09, 2023

Load balancing, threading, and scaling in Node.js

Michael Dawson

​​​​​​​Many apps require more computational resources than a...

What's up in the community?

Nodejs

Major Node.js releases

Nodejs

Node.js events

Nodejs

Node.js Videos

Nodejs

JavaScript Serverless and Kubernetes communities