10up Engineering Best Practices (2024)

Node Versions

Node applications should only use Active LTS or Maintenance LTS versions. Odd-numbered versions (11, 13, 15) should not be used. When starting a new project always use the most recent Active/Maintenance LTS version. For more information about Node.js version visit Node.js releases page.

10up Engineering Best Practices (1)

Every project should declare its supported node version in package.json by specifying the engines property.

{ "engines" : { "node" : ">=12.0.0" }}

Additionally, it is recommended to create a .nvmrc file with the officially supported node version of the project. This allows those using nvm to run nvm use to switch the node version. We also recommend setting up shell integration to automatically switch node versions when changing directories.

Security Updates

The JavaScript ecosystem is constantly evolving, several security patches are released almost every day for the hundreds of npm packages used across 10up’s projects. Keeping packages up-to-date is a time-consuming process considering how fast new patches are released. This section brings a few best practices and processes to better maintain our JavaScript codebase.

Node.js updates

The production Node.js server should always be running a LTS version in order to receive extended security updates. Additionally, production servers running Node.js should be regularly updated to the latest minor version automatically.

Dependencies Updates

We advise project teams to constantly update all npm dependencies for security fixes and general updates. This can be done through the npm audit fix command. Typically, we recommend leveraging GitHub/GitLab bots (like Dependabot) that automatically create Pull Requests to update dependencies, instead of having engineers running npm audits manually.

Before enabling an automated bot to handle dependencies updates, each project team should manually update all dependencies with the help of npm audit fix to reduce the numbers of PRs created by the bot. Using an automated bot to handle package updates ensures the project team is constantly up-to-speed with the latest version of each package being used. Even if there are changes required to make a new version of a package work, these changes tend to be much easier when the version jump is smaller.

Additionally, we recommend running npm audit through audit-ci and block Pull Requests/Merge Requests from being merged/approved until high and severe security vulnerabilities are patched.

Deploying Node.js

We recommend shipping Node.js applications through the official Docker containers which will always pull the latest Node.js minor version on every new deployment.

10up Engineering Best Practices (2024)
Top Articles
Philly Runners -- Safety Page
Bold moves are less risky than a timid corporate strategy
Dricxzyoki
Myhr North Memorial
Achivr Visb Verizon
Hardly Antonyms
Craigslist Estate Sales Tucson
Iron Drop Cafe
Jscc Jweb
What is the difference between a T-bill and a T note?
Dit is hoe de 130 nieuwe dubbele -deckers -treinen voor het land eruit zien
Operation Cleanup Schedule Fresno Ca
Everything We Know About Gladiator 2
Iu Spring Break 2024
NBA 2k23 MyTEAM guide: Every Trophy Case Agenda for all 30 teams
Odfl4Us Driver Login
Craigslist Prescott Az Free Stuff
The Largest Banks - ​​How to Transfer Money With Only Card Number and CVV (2024)
Busted Mcpherson Newspaper
67-72 Chevy Truck Parts Craigslist
Buying Cars from Craigslist: Tips for a Safe and Smart Purchase
Shadbase Get Out Of Jail
All Obituaries | Verkuilen-Van Deurzen Family Funeral Home | Little Chute WI funeral home and cremation
Integer Division Matlab
The Boogeyman (Film, 2023) - MovieMeter.nl
Tire Plus Hunters Creek
Is Light Raid Hard
Bfri Forum
Murphy Funeral Home & Florist Inc. Obituaries
Gas Prices In Henderson Kentucky
Best Workers Compensation Lawyer Hill & Moin
Laurin Funeral Home | Buried In Work
Wattengel Funeral Home Meadow Drive
Stanley Steemer Johnson City Tn
Vindy.com Obituaries
Sallisaw Bin Store
Silicone Spray Advance Auto
Patricia And Aaron Toro
Gabrielle Abbate Obituary
Deezy Jamaican Food
Lyons Hr Prism Login
Phmc.myloancare.com
N33.Ultipro
Canada Life Insurance Comparison Ivari Vs Sun Life
Dragon Ball Super Card Game Announces Next Set: Realm Of The Gods
Vci Classified Paducah
3367164101
Advance Auto.parts Near Me
Arginina - co to jest, właściwości, zastosowanie oraz przeciwwskazania
Rovert Wrestling
Mikayla Campinos Alive Or Dead
A Snowy Day In Oakland Showtimes Near Maya Pittsburg Cinemas
Latest Posts
Article information

Author: Fredrick Kertzmann

Last Updated:

Views: 5314

Rating: 4.6 / 5 (46 voted)

Reviews: 85% of readers found this page helpful

Author information

Name: Fredrick Kertzmann

Birthday: 2000-04-29

Address: Apt. 203 613 Huels Gateway, Ralphtown, LA 40204

Phone: +2135150832870

Job: Regional Design Producer

Hobby: Nordic skating, Lacemaking, Mountain biking, Rowing, Gardening, Water sports, role-playing games

Introduction: My name is Fredrick Kertzmann, I am a gleaming, encouraging, inexpensive, thankful, tender, quaint, precious person who loves writing and wants to share my knowledge and understanding with you.