Here is a workaround for when you want to use text-wrap: balance but must also render nicely for browsers...
DirectUpload allows you to upload files to your file storage without having to wait for the form to submit. It...
I have moved away from creating fixture elements using CSS selectors. While CSS can be very concise, it can be...
The key to unlocking the full potential of LLMs in coding lies in crafting precise prompts. The main challenge is...
Elements can be hidden and shown by toggling the display property. However, this is not animatable, so we often turn...
Slow test suites are a major pain point in projects, often due to RSpec and FactoryBot. Although minitest and fixtures...
Starting with ChromeDriver 127, if your application displays a beforeunload confirmation dialog, ChromeDriver will immediately close it. In consequence, any...
esbuild comes with a minifier that is good enough for most cases. If you're looking to squeeze out as...
Terser is a really good minifier ("compressor") for JavaScript code. I'm often surprised by the thoughtfulness of its compressed...
testing-library are widely used testing utilities libraries for javascript dependent frontend testing. The main utilities provided are query methods...
Whenever you have to deal with randomness in a jasmine test there are some spy strategies to help you out...
Reacting on a class getting added can be done with a mutation observer. Example: const items = document.querySelectorAll('.item') const expectedClass...
I recently stumbled over a quirk in the way Ruby handles local variables that I find somewhat dangerous. Consider:
Modern JavaScript includes Intl.NumberFormat to format numbers in different formats and locales. In this card, we describe a wrapper for...
This card shows an uncommon way to retrieve a file using selenium where JavaScript is used to return a binary...
Debouncing a method call delays its execution until after a specified time has passed. If it's called again before...
I used two lab days to read the The framework field guide - Fundamentals, the first of a three part series...
tl;dr Do not use the option optional on association declarations with a symbol, lambda or proc. Explanation Association declarations...
As we're switching from PT to Linear, I've updated the existing bash script to work for commits that...
shoelace is a library of web components. Here is a proof of concept how a integration (slightly different as the...
Your commit messages should include the ID of the issue your code belongs to. Our preferred syntax prefixes the issue...
tl;dr When browsers start to adapt proposals from Open UI, it might not be necessary to use any 3rd...
...HTML elements can automatically start playing when the autoplay attribute is set on them. Except for when they can not...
You can chain multiple Capybara matchers on the page or any element: expect(page) .to have_content('Example Course')