23 hours ago WEB · OPEN SOURCE · JAVASCRIPT · BACKEND · DEVELOPMENT TOOLS · SECURITY · PERFORMANCE · OPTIMIZATION · TOOLING Sebastian McKenzie Christoph Pojer James Kyle In the JavaScript community, engineers share hundreds of thousands of pieces of code so we can avoid rewriting basic components, libraries, or frameworks of our own. Each piece of code may in turn depend on other pieces of code, and these dependencies are managed by package managers. The most popular JavaScript package manager is the npm client, which provides access to more than 300,000 packages in the npm registry. More than 5 million engineers use the npm registry, which sees up to 5 billion downloads every month. We've used the npm client successfully at Facebook for years, but as the size of our codebase and the number of engineers grew, we ran into problems withpconsistency, security, and performance. Af...