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

Code quality can be measured in four levels: (Working code) Reliable code (minimum) Readable code (ok for short-lived code...

makandra dev

You'll need openssl-3 or newer for servers running 22.04 Ruby version 3.1 uses by default the gem openssl...

There is a way to use multiple databases in Rails. You may have asked yourself how you're able to...

tl;dr You can use attribute? as shorthanded version of attribute.present?, except for numeric attributes and associations. Technical Details

The $gemname.gemspec file adds metadata to your Gem. You can provide links to your Github bugtracker or changelog file that...

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

When you need information about a gem (like version(s) or install path(s)), you can use the gem binary...

github.com

ruby-warning adds custom processing for warnings, including the ability to ignore specific warning messages, ignore warnings in specific files/directories...

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...

This card explains how to generate an entity relationship diagram for your Rails application. We also show how to limit...

Sometimes you will need an input field which wraps content and grows in height as soon as content gets longer...

When the order matters: expect(array1).toEqual(array2) Regardless of order: expect(array1).toEqual(jasmine.arrayWithExactContents(array2)) Ignoring extra elements:

Redis.current will be removed without replacement in redis-rb 5.0. Version 4.6.0 adds deprecation warnings for Redis.current and Redis.current=: `Redis.current...

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

RSpec's let allows you to super into "outside" definitions, in parent contexts. Example: describe '#save' do subject { described_class.new(attributes...

makandra dev

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

stackoverflow.com

This StackOverflow question about nested function definitions in Ruby imparts a good understanding of Ruby's def.

In SQL, NULL represents an "unknown" value. Because of this, it does not behave like a standard piece of data...

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

Attaching files to a field that is handled by Carrierwave uploaders (or maybe any other attachment solution for Rails) in...

github.com

When Capybara locates elements in the DOM, by default it allows only accessing visible elements -- when you are using a...

When using where.not with a Hash of multiple attributes, Rails applies logical NAND (NOT (A AND B)). This contrasts with...