#289 — May 23, 2019

Read on the Web

Node Weekly

Node 12.3.0 (Current) and Node 12.3.1 Released — The most notable feature in 12.3 is the --experimental-wasm-modules option which enables WebAssembly module support, allowing you to do, say, import './module.wasm' (expect some blog posts on this soon). 12.3.1 fixes a regression in 12.3.0 that prevented native addons from compiling.

Node.js Foundation

When Not to Use Lock Files with Node — Package managers like npm and Yarn use ‘lock’ files that track the exact, current versions of a project’s dependencies. Learn more about how they work and when not to use them here.

Dominik Kundel

Get the Fastest App Deployments. Get Started Free — Unlike most Continuous Integration (CI) solutions, Buddy only re-builds the parts of your application that have changed and deploys your updates in seconds to any app store. Start building better apps faster with Buddy.

Buddy sponsor

Express 4.17.0 Released: The Minimalist Web Framework — It’s not a big release but it’s the first release in 7 months and adds a couple of minor features (namely express.raw and express.text), so..


SCAR: 1-Click Static Site Deployment on AWS — A simple tool that creates the right CloudFormation templates to roll out a static site on AWS complete with custom domain, DNS, SSL and CDN in one go. Built in Node, naturally :-)

Kelvin Jiang

Windows-Build-Tools: Install C++ Build Tools for Windows using npm — Want to compile native Node modules on Windows? npm install --global windows-build-tools will help you out.

Felix Rieseberg

💻 Jobs

Senior Full Stack Developer, Sydney or Option to Work Remotely Across Australia — We are expanding our team and range of products. Recruiting for a Developer with a passion in the server side and APIs who wants to be part of our work family.


Find a Node Job on Vettery — Vettery specializes in tech roles and is completely free for job seekers.


📚 Tutorials

3 Approaches for Using the Google Sheets API in Node: A Tutorial — Outlining different ways to connect and authorize with the Google Sheets API and then pulling out data stored within Sheets.

Steph Smith

How to Control and Record Voice Calls with Node.js Serverless Functions — In case you forgot that communications platform Twilio has its own serverless functions platform, this well-written tutorial on using it to managing the recording of voice calls might whet your appetite.

Stefan Judis (Twilio)

Automated Dependency Updates Done Right — Depfu figures out the minimum number of updates you need to keep your app reasonably up-to-date.

Depfu sponsor

5 Free Ways To Host Your Node.js App in 2019 — Openshift, Openode, Heroku, ZEIT Now, and Glitch all provide options. I’d also add Netlify to the list if building a static site from a Node app counts.

Amit Bendor

The 80/20 Guide to Promises in Node.js — Promises replaced callbacks as the de facto ‘go to’ way to manage events some years ago and they form the basis of async/await so it pays to be very familiar with them. If you want more depth, Google has a promises introduction they keep up to date too.

Valeri Karpov

Node.js File Streams Explained


🛠 Code and Tools

graphql-codegen: A GraphQL Code Generator — A tool that generates code out of your GraphQL schema for various stacks and tools from TypeScript and React to MongoDB and Reason.

Tomek Poniatowicz

electron-reloader: Simple Auto-Reloading for Electron Apps During Development — Electron app developer? You probably want this.

Sindre Sorhus

Leveldown: Pure C++ Node.js LevelDB BindingsLevelDB is a fast key-value storage library built at Google that’s often used behind the scenes in other database systems (e.g. IndexedDB or Riak).


Safely Roll Out Features in Node with Free Feature Flags

Optimizely Rollouts sponsor

Keystone 4.1: A Node CMS and Webapp Framework — A CMS built on top of Express and Mongoose (the MongoDB document mapper). 4.1.0 brings Babel 7 into play and a laundry list of tweaks.


sync-dotenv: Keep Your .env in Sync with .env.example.env files should never go into source control due to the sensitive nature of the data they contain. Instead, provide an ‘example’ .env file, and keep it up to date with this.

Luqman Olushi O.

Spruce: A Small, Open Source Social Networking Platform Powered by Node and MongoDB

Divy Srivastava

await-timeout: A Promise-Based API for setTimeout and clearTimeout

Vitaliy Potapov