Tools to automatically format PHP, JavaScript and CSS files

Good writeup by Freek on how to get PHP-CS-Fixer and Prettier up and running. When working on a project with other people, it’s important to pick a coding standard. Agreeing on a coding standard makes the code more readable for all developers that need to touch the project. It’s easy to make mistakes against those […]

quicklink – Prefetch links (during idle time) based on what is in the user’s viewport

Great little piece of JavaScript which prefetches links, but only when the browser is idle (and when the user is on a “fast” connection). Uses the aforementioned Intersection Observer to detect which links are in-view. Install it per NPM and call its quicklink(); method – for example after the DOM has loaded – to initialize […]

ESNext: Proposals to look forward to

Yesterday I was invited as a speaker at the Full Stack Antwerp December 2018 Meetup at icapps. At the meetup I gave an adaptation of my talk β€œWhat’s Next for JavaScript”. The talk itself – which got renamed to β€œESNext: Proposals to look forward to” – goes more into depth onto the proposals themselves, and […]

The Cost Of JavaScript In 2018

Addy Osmani: Building interactive sites can involve sending JavaScript to your users. Often, too much of it. Have you been on a mobile page that looked like it had loaded only to tap on a link or tried to scroll and nothing happens? Byte-for-byte, JavaScript is still the most expensive resource we send to mobile […]

JavaScript engine fundamentals: Shapes and Inline Caches

Mathias Bynens and Benedikt Meurer: As a JavaScript developer, having a deeper understanding of how JavaScript engines work helps you reason about the performance characteristics of your code. I especially like the part where they take a look into an JS engine’s Object Model: How do JavaScript engines implement the JavaScript object model, and which […]

A minimal guide to ECMAScript Decorators (and Property Descriptors)

Very insightful piece by Uday Hiwarale on ES Decorators (Class Method Decorators, Class Instance Field Decorators, and Class Decorators). Right now (June 2018), Decorators are in stage 2 and we have Babel plugin to transpile decorators babel-plugin-transform-decorators-legacy. In stage 2, as syntax of the feature is subjected to change, it’s not recommended to use it […]

JSUI – A tool for visually organizing, creating and managing JavaScript projects.

Highly interesting tool by Kitze: πŸ—‚ Organize & group apps πŸ€– Generate new apps πŸ” Search apps & preview files πŸƒβ€β™‚οΈ Quick actions βœ… Run scripts πŸ—„ Manage dependencies πŸ”Œ Apply plugins πŸ“„ Generate files This will surely help out developer starting with JavaScript based projects. More features are tweeted out regularly on JSUI’s Twitter […]

Wavethrough – Stealing data from remote sites through (fake) wav files

Jake Archibald discovered a really nice browser bug (which is fixed by now) by which he was able to steal data from remote sites by loading it in as a (fake) wav file. The exploit works as follows: Make a request to evil-script, using a Content-Range header to suggest there’s more data to be loaded […]

Siema – Lightweight and simple carousel with no dependencies

Siema is a lightweight (only 3kb gzipped) carousel plugin with no dependencies and no styling.It is 100% open source and available on Github. It is free to use on personal and commercial projects. Use it with your favourite module bundler or by manually injecting the script into your project. I especially like the fact that […]

Sticky Events – Events for position: sticky;

Sticky Events is a library that can listen for events on elements that have position: sticky; applied. It’s an abstraction built on top of the IntersectionObserver, and provides one with three types of events: StickyEvent.CHANGE: Fired when an element becomes stuck or unstuck StickyEvent.STUCK: Fired only when an element becomes stuck StickyEvent.UNSTUCK: Fired only when […]