Systems | Development | Analytics | API | Testing

NodeJS

How to Implement Rate Limiting in Express for Node.js

Rate limiting is a fundamental mechanism for controlling the number of requests a client can make to a server in a given time frame. In a world where more than 30% of web traffic comes from malicious bots, that proactive strategy is critical to protect servers from abuse. In this tutorial, you'll delve into the concept of rate limiting and understand why you need it in your Node.js backend. Then, you'll learn how to implement it in Express to block or slow down incoming excess requests.

Enhancing Node.js Core: Introducing Support for Synchronous ESM Graphs

Exciting news this week! One of the latest features in Node.js core is the addition of support for requiring synchronous ECMAScript Modules (ESM) graphs. This enhancement promises to simplify the transition for package authors and users alike, as the ecosystem gradually shifts towards ESM. This long-awaited feature, enabled via the --experimental-require-module flag, marks a pivotal moment in Node.js development, addressing a persistent pain point for developers.

N|Solid: Node.js Compatibility Proven through Fastify CI Integration

At NodeSource, we understand the hesitance and scrutiny that often accompany claims of "Node.js compatibility". The Node.js ecosystem is vast and intricate, and as Matteo Collina rightly points out, passing a "hello world" example is just the start. We believe N|Solid should be a component of every Node.js project, especially in production, to provide developers and organizations with the most advanced performance and security observability tooling.

Node.js Performance APIs: An Introduction

Node.js offers a rich set of performance data through its APIs, similar to how modern web browsers expose performance metrics for webpages. With tools like the Performance Measurement API and the perf_hooks module in Node.js, you can gain insights into your application's performance from the server's perspective, closely aligning with what the end user experiences. In this article, the first of a two-part series about performance hooks, we'll explore how to approach performance optimization in Node.js.

Node.js Timeout Tactics: A Complete Handbook

Node.js is a powerful platform for building scalable and efficient server-side applications. One essential feature of Node.js development is managing timeouts effectively. Timeouts help handle various scenarios, such as preventing requests from hanging indefinitely or executing tasks within a specific timeframe. Let's get into the timeouts as time is out, what timeouts mean, and why they are necessary for Node.js applications.

Choosing the Right Node.js Package Manager in 2024: A Comparative Guide

The year 2024 marks a crucial juncture in the Node.js ecosystem, where developers face different choices when it comes to selecting the right package manager for their projects. npm, Yarn, and pnpm stand out as the frontrunners, as they are the most widely used in the Node.js ecosystem. Each package offers unique features and capabilities tailored to address the challenges of modern development environments.

Top 8 Recent V8 in Node Updates

V8 is the most popular JavaScript engine on the planet, supporting technologies such as Chrome and Node.js. The pace of V8's development is impressive, with multiple code commits a day and major releases roughly every month. Keeping up with updates isn't easy, but you've come to the right place! Here, we'll dig into the latest improvements and additions Google has made to the JavaScript engine. Find out what the future of web development looks like!

Integrate Type Checking with Node.js using TypeScript: A Tutorial

With Node.js and Express, you can easily create a JavaScript server. Then the obvious question would be, “Why Typescript?” While JavaScript remains the most popular scripting language, TypeScript emerges as a great alternative when your application becomes more complex or when you collaborate with a distributed team of developers.