#470 — January 10, 2020
JavaScript Weekly
Snowpack: A 'Run Once' Dependency Builder/Modularizer — An interesting project (formerly known as pika/web) from the folks behind Pika. The idea is that you run Snowpack once after npm install and it prepares your dependencies as ES modules that can be loaded dynamically by the browser so you don’t need to rebundle on every code change you make. This isn’t good if you want to target old browsers, but for the 90% of cases, this could change your dev process.
Fred K. Schott
2019's JavaScript 'Rising Stars' — If you don’t like popularity contests, skip this one, but it’s the latest annual roundup of which JavaScript projects did well in terms of gaining GitHub stars in 2019. Vue took the top spot for the 4th year in a row, but the subcategories are more interesting.
Michael Rambeau and Sacha Grief
Get Best in Class Error Reporting for Your JavaScript Apps — Time is money. Software bugs waste both. Save time with Bugsnag. Automatically detect and diagnose errors impacting your users. Get comprehensive diagnostic reports, know immediately which errors are worth fixing, and debug in minutes. Try it free.
Bugsnag sponsor
Dan Abramov on What JavaScript Is Made Up Of — Dan (of React core team and Redux fame) reflects on his mental model of what JavaScript is in terms of raw concepts.
Dan Abramov
How to Move a Project to TypeScript - At Your Own Pace — We’ve recently commented how 2019 seemed to be the year of many people ‘switching’ to TypeScript.. but if you’re intimidated, you might like this guide to moving an existing project in a gradual way.
Dominik Kundel
The State of Storybook at the End of 2019 — Storybook is a popular tool for developing and showcasing UI components (originally just for React, but now supporting Angular, Vue, and more). 2019 saw even more growth for Storybook’s ecosystem and community.
Michael Shilman
⚡️ Quick Releases
- Ember 3.15
- date-fns 2.9 — Modern date utility library.
- Johnny Five 1.4.0 — Robotics and IoT framework.
- Handlebars.js 4.7 — Classic templating library.
- Pickr 1.5 — Responsive and hackable color picker.
💻 Jobs
Full-Stack or Front-End Engineer - Rails/React (Remote/NYC) — Got 2+ years of experience? Come help build the next iteration of our growing digital recovery platform centered providing alcohol abuse treatment.
TEMPEST
Find a Job Through Vettery — Vettery is completely free for job seekers. Make a profile, name your salary, and connect with hiring managers from top employers.
Vettery
📘 Articles & Tutorials
An Abbreviated History of JavaScript Package Managers — This post explains why npm, Yarn and pnpm were created and the problems they’ve set out to solve over time.
Matt Goldwater
Understanding Async/Await — A straightforward and easily accessible tutorial on using promises and how async and await can make the resulting code more straightforward.
Sarah Drasner
CFP for ForwardJS San Francisco and Ottawa now OPEN — Submit your proposal to speak at ForwardJS Ottawa (May 26-29) or San Francisco (July 20-24) Ticket sales begin Jan 15.
ForwardJS sponsor
Off Main Thread Architecture with Vuex — Inspired by Surma’s articles on using Web Workers to take work off of the main thread, Abdelrahman was inspired to see how this could help with Vue and Vuex.
Abdelrahman Awad
How To Create And Deploy an Angular Material App — This article will help you get started with a new Angular project from just a thought to deployment (on Netlify, in this case).
Shubham
Things I've Learnt Optimizing My Build Time — Things a developer has learnt implementing some build time optimization techniques at the company he works for.
Eldad Bercovici
Why I Avoid Nesting Closures — "A little tendency I have to reduce cognitive load for readers of my code."
Kent C Dodds
A Basic Example of the Web Share API — The Web Share API enables native sharing (via other apps/social networks) on pages.
Dillion Megida
Comparing the Different Types of Native JavaScript 'Popups' — window.confirm, window.onbeforeunload, etc.
Elliot Goldman
Top GitHub Best Practices for Developers - Expanded Guide — Implementing these best practices could save you time, improve code maintainability, and prevent security risks.
Datree.io sponsor
▶ Why GitHub Actions Is One Developer's New Favorite Programming Tool — While Github Actions is commonly associated with deployment and pipelines, it’s ultimately an engine for running JavaScript in the cloud, and that opens up some neat use cases as demonstrated here. 17 minutes.
Kristian Freeman
🔧 Code & Tools
Craft.js: A React Framework for Building Drag and Drop Page Editors — It’s a bold move to make the landing page for your project be a text editor itself, but I like it :-)
Prev Wong
Code to Graph: Visualize JavaScript Code as a Network Diagram — An interesting idea and fun to play with.
Vincent Lecrubier
Faster CI/CD for All Your Software Projects Using Buildkite
Buildkite sponsor
Mocha 7.0 Released: The Popular JavaScript Test Framework — Mocha has been a popular go-to test framework for both Node and the browser for years now. 7.0.0 isn’t a huge release but drops Node 6 support and makes enough changes and deprecations to warrant the version update.
Mocha
Postgres.js: A Fast, Full-Featured Postgres Client for Node — Claims to be the fastest even (at 2-10x faster than the popular pg module) but we’ll let you be the judge of that :-)
Rasmus Porsager
scalajs-react: React, but for Scala.JS — Feeling brave? Scala.js provides a way to build front-end apps using Scala (which is then compiled into JavaScript) and scalajs-react brings React into the mix too.
David Barri
😂 Last but not least..
The Size of a node_modules Folder When Installing The Top 100 Packages — We’ve all heard the jokes about the size of node_modules directories, but I found it neat that someone’s actually tracking this on an ongoing basis. And if you really want to clean up those folders, check out npkill.
Koen van Gilst