Skip to main content
CSS is fun and cool and I like it.
Link

Import Non-ESM libraries in ES Modules, with Client-Side Vanilla JS

Article

Avoid Heavy Babel Transformations by (Sometimes) Not Writing Modern JavaScript

It’s hard to imagine writing production-ready JavaScript without a tool like Babel. It’s been an undisputed game-changer in making modern code accessible to a wide range of users. With this challenge largely out of the way, there’s not much holding us back from really leaning into the features that modern specifications have to offer.

But at the same time, we don’t want to lean in too hard. If you take an occasional peek into the code your users are … Read article “Avoid Heavy Babel Transformations by (Sometimes) Not Writing Modern JavaScript”

Article

Differential Serving

There is “futuristic” JavaScript that we can write. “Stage 0” refers to ideas for the JavaScript language that are still proposals. Still, someone might turn that idea into a Babel plugin and it could compile into code that can ship to any browser. For some of these lucky proposals, Stage 0 becomes 1, 2, 3, and, eventually, an official part of the language.

There used to be a point where even the basic features of ES6 were rather experimental. … Read article “Differential Serving”

Article

Using Default Parameters in ES6

I’ve recently begun doing more research into what’s new in JavaScript, catching up on a lot of the new features and syntax improvements that have been included in ES6 (i.e. ES2015 and later).

You’ve likely heard about and started using the usual stuff: arrow functions, let and const, rest and spread operators, and so on. One feature, however, that caught my attention is the use of default parameters in functions, which is now an official ES6+ feature. This is … Read article “Using Default Parameters in ES6”

Link

ECMAScript Modules in Browsers

Link

Tinder for Bananas

I saw this little web app (live demo) by Das Surma going around the other day. It’s funny, but it’s also a really compelling demo app for a bunch of modern technologies. I’m sure that’s the whole point of it.

  • Minimal build process. Just Gulp to use Babel and PostCSS. It’s heavy on ES6+ and CSS custom properties.
  • Loads of custom elements, like <tinderforbananas-item>, with the Polymer polyfill for those.
  • Icons are super tiny SVG, they look
Read article “Tinder for Bananas”
Link

Lebab

Article

Template Literals

The Template Literal, introduced in ES6, is a new way to create a string. With it comes new features that allow us more control over dynamic strings in our programs. Gone will be the days of long string concatenation!

To create a template literal, instead of single quotes (') or double quotes (") quotes we use the backtick (`) character. This will produce a new string, and we can use it in any way … Read article “Template Literals”

Article

Transpiling ES6

While support for ES6 is always increasing, we can’t always assume that users will be using a browser that supports all its features. So, in order to utilize ES6 features now and make sure we won’t run into cross-browser compatibility issues, we need to transpile our code.

Let’s look at two possible ways we can perform the task of transpiling our code. First, we will use npm scripts and Babel. For the second, we will look at using Gulp with … Read article “Transpiling ES6”