---
title: "Node 12.12.0 released"
publication: "Node Weekly"
issue: 310
published_at: "2019-10-17"
canonical_url: "https://nodeweekly.com/issues/310"
---

This week's Node.js news, tutorials, and projects       

#310 — October 17, 2019 

[Read on the Web](https://nodeweekly.com/issues/310)   

We're experimenting with a tweak to the format this week. There are a lot of 'newsy' items we want to include, but which don't need a full write up. So we're including them in a smaller list below the bigger features. This way we get to cover more stories but in less space. Enjoy! 🙂  

Node Weekly  

[Node v12.12.0 (Current) Released](https://nodejs.org/en/blog/release/v12.12.0/) — 

- The `fs` module has added `opendir()` and `fs.Dir` as ways to asynchronously iterate through directories.
- A `--force-context-aware` flag has been added to prevent addons that aren’t context aware from being loaded (this will help systems that embed V8 contexts, such as Electron – [more info](https://github.com/electron/electron/issues/18397)).
- [JSON module support](https://github.com/whatwg/html/issues/4315) has also been made experimental again, due to security concerns in the Web-based implementation of the idea. 

Node.js Foundation   [![\](https://copm.s3.amazonaws.com/b55bc7b7.jpg)](https://frontendmasters.com/courses/functional-js-fundamentals/?utm_source=jsweekly&utm_medium=email&utm_campaign=functionalhardparts) 

[New Course: Hard Parts of Functional JavaScript Fundamentals 🧡](https://frontendmasters.com/courses/functional-js-fundamentals/?utm_source=jsweekly&utm_medium=email&utm_campaign=functionalhardparts) — Explore the increasingly popular paradigm of functional programming in JavaScript. Go under the hood of powerful techniques like: Higher Order Functions, Function Composition, Pure Functions, and Immutability of State. 

Frontend Masters sponsor   

[The Perfect Architecture Flow for Your Next Node Project](https://blog.logrocket.com/the-perfect-architecture-flow-for-your-next-node-js-project/) — Outlines a set of architectural rules and best practices to consider to ensure your next Node project starts on the right path. 

Piero Borrelli   

[Zero: A Plain Text, Terminal-Based 3D Graphics Rendering Pipeline](https://github.com/sinclairzx81/zero) — Yes, this is really just a bit of fun, but is a nice example of building up a 3D rendering engine from scratch. 

Haydn Paterson     

**Quick bytes:** 

- Strapi, a team behind the eponymous, open source headless CMS built in Node, [has raised $4 million.](https://strapi.io/blog/announcing-strapi-4m-seed-funding-round)
- Isaac Schlueter has spoken to Matt Asay about [how npm Inc. might be returning to its open source roots.](https://www.techrepublic.com/article/npm-is-moving-back-to-its-developer-roots-founder-says/)
- There were 50 Web servers in 1993, 100,000 in 1996, and [more than a billion now.](https://twitter.com/w3c/status/1179909748147343361?s=12)   

💻 Jobs  

[Senior Node.js with Big Developer Energy Wanted (London, UK)](https://job.careersjs.com/5v8) — What if you could have that can-do start-up energy in an established company that deals with the likes of Pepsi, Coke, Boeing, and Rolls Royce? 

CareersJS   

[Find A Job Through Vettery](https://www.vettery.com/tech?utm_source=newsletter&utm_medium=cooper-nodeweekly&utm_term=tech&utm_content=grouped&utm_campaign=ad-88879) — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started. 

Vettery  

📚 Articles and Tutorials  

[Developing with Node.js on Windows and WSL2](https://docs.microsoft.com/en-us/windows/nodejs/index) — Microsoft has been working on their getting started documentation, so if you’re on Windows (or thinking of moving to it), these tutorials should help. 

Microsoft   

[What's Behind Bringing Colorful Output to the Terminal](https://blog.bitsrc.io/coloring-your-terminal-using-nodejs-eb647d4af2a2) — The short answer is to use something like [Chalk](https://github.com/chalk/chalk), but if you’ve wondered how such libraries work under the hood, here’s a brief tour. 

Chidume Nnamdi   

[Monitoring, Alerting, and Distributed Tracing For Your Node Applications. Try It Free](https://www.datadoghq.com/dg/apm/node-application-performance/?utm_source=Advertisement&utm_medium=CooperPress&utm_campaign=CooperPress-NodeWeeklyAPMB) 

Datadog APM sponsor   

[Sending Scheduled Messages to Slack with the Google Calendar API](https://medium.com/headfwd/how-to-send-scheduled-messages-to-slack-with-the-google-calendar-api-f491040195b1) 

Wilco Schoneveld   

[JavaScript Naming Conventions](https://www.robinwieruch.de/javascript-naming-conventions) — An introduction to ‘common sense’ conventions around naming variables, classes, functions, and more. 

Robin Wieruch   

[Reducing Docker Image Size and Cutting Google Cloud Costs](https://www.mattzeunert.com/2019/10/13/reducing-docker-image-size-and-cutting-gcp-cost.html) 

Matt Zeunert   

[How to Build Command-Line 'Spinners' in Node](https://blog.bitsrc.io/build-command-line-spinners-in-node-js-3e432d926d56) 

Chidume Nnamdi  

🛠 Code and Tools  

[Vandelay: Automatically Generate Import Statements in VS Code](https://marketplace.visualstudio.com/items?itemName=edb.vandelay#vandelay) — This VS Code extension keeps track of all available imports and allows you to quickly import them. Supports both Node and Python. 

Visual Studio Marketplace   

[A Node REST API Development Boilerplate App](https://github.com/maitraysuthar/rest-api-nodejs-mongodb) — There are a lot of boilerplate apps but this one is pretty good. It brings together Node, Express, and MongoDB along with basic authentication, account confirmation, testing, code coverage, linting, and more. 

Maitray Suthar   

[human-signals: Human-Friendly Process Signal Info](https://github.com/ehmicky/human-signals) — Basically a JavaScript object that contains info about the various POSIX signals. 

ehmicky   

[middy: A 'Stylish' Node Middleware Engine for AWS Lambda](https://github.com/middyjs/middy) — Bringing Express-style middleware to the serverless experience. 

Middy   

[25x Faster Than Firebase & MongoDB Atlas: Macrometa Global Database](https://go.macrometa.co/nodeweekly) — Serve DB & API from the edge in milliseconds. Build & run stateful REST API & serverless functions on 175 edge locations. 

Macrometa sponsor   

[Convict 5.2: A 'Featureful' Configuration Management Library](https://github.com/mozilla/node-convict) — A Node config library aimed at projects with multiple collaborators who need more robustness, context, and validation of settings. 

Mozilla   

[User Agents: Generate Random, But Real-Looking, User Agents](https://github.com/intoli/user-agents) — Use this for good, not evil, but it’s interesting how it gets updated almost every day. 

Intoli        

Curated by [Cooperpress](https://cooperpress.com/) and [Peter Cooper](https://twitter.com/peterc). 

[Change your email address](https://nodeweekly.com/edit_subscription/*|UID|*) or[Stop getting this newsletter](https://nodeweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
