sass >= 1.35.0 has the option quietDeps and silenceDeprecations to silence deprecation warnings from dependencies. quietDeps: No deprecation warnings for dependencies...

tl;dr In Chrome DevTools in the Elements tab or in Firefox in the Inspector tab you can right click...

Unpoly's [up-observe], [up-autosubmit] and [up-validate] as well as their programmatic variants up.observe() and up.autosubmit...

You can use ETags to allow clients to use cached responses, if your application would send the same contents as...

To allow HTTP 304 responses, Rails offers the fresh_when method for controllers. The most common way is to pass...

When working with feature branches, stale branches pile up over time. It's best to remove them right after merge...

You can use the code below to check whether the browser can make connections to the current site: await isOnline...

Testing file download links in an end-to-end test can be painful, especially with Selenium. The attached download_helpers.rb provides...

tl;dr With ES2021 you now can use str.replaceAll(), Promise.any(), logical assignment operators, numeric separators and WeakRef on all major...

You can use Unpoly's up.on with a named listener function and immediately unbind this event listener with { once: true...

developer.chrome.com

In Chrome DevTools you can use getEventListeners(object) to get a list of registered event listeners on the specified object...

tl;dr: Use the URLSearchParams API to make your live easier if you want to get or manipulate query parameters...

Due to the way we setup Jasmine tests in our projects, you may run into various errors when Jasmine boots...

While we are used to run our JavaScript tests on a test page within our Browser, it's also possible...

makandra dev

To ensure a consistent code style for JavaScript code, we use ESLint. The workflow is similar to integrating rubocop...

This are the steps I needed to do to add esbuild to an application that used the vanilla rails asset...

Building application assets with esbuild is the new way to do it, and it's great, especially in combination with...

stackoverflow.com

One really simple way to check whether JavaScript Sentry integration was successful (raven-js or @sentry/browser), is to create an...

Use option:checked to find the currently selected option: select.querySelector('option:checked') Yes, :checked, not :selected. This is the same...

Jasmine has spyOnProperty(), but it only works if the property is implemented using getter and setter functions. This is a...

TL;DR When using Cache-Control on a Rails application, make sure the Vary: Accept header is set.

The Interactive Advertising Bureau (IAB) is a European marketing association which has introduced a standard how advertising can be served...

umaar.com

Similar to the Webpack Bundle Analyzer, Chrome's new Lighthouse feature … … shows a visualisation of your JavaScript bundles. It's...

From Exploring ES6: Module imports are hoisted (internally moved to the beginning of the current scope). Therefore, it doesn’t...