We usually ship applications that self-host webfonts to comply with GDPR. Many popular web fonts are available as NPM...

makandra dev

If you need dummy data to play around with in development, it's often faster to reuse your existing factories...

Orca is a Linux screen reader. Since it is part of the GNOME project it should come preinstalled with Ubuntu...

Why Rails has multiple schema formats When you run migrations, Rails will write your current database schema into db/schema.rb. This...

ActiveStorage does not provide any built-in way of implementing authentication for the available DirectUpload endpoint in Rails. When using...

There are several ways to run a single spec. I usually copy the spec file path with the line number...

The key to unlocking the full potential of LLMs in coding lies in crafting precise prompts. The main challenge is...

Here is a bash script that I use to auto-configure displays on Ubuntu 24.04 with Xorg. Background

makandra dev
impactahead.com

Also see the list of IRB commands. Switching the context Changes the "default receiver" of expressions. Can be used to...

tl;dr When a cookie includes an Expires attribute or an HTTP response includes caching headers like Expires or Cache...

When Ruby objects are inspected in any modern IRB, some objects (like ActiveRecord instances) are rendered with neat colors and...

makandra dev

Capistrano 3 has a doctor task that will print information about Environment: Ruby, Rubygems and Bundler versions List of Capistrano...

makandra dev

YJIT is Ruby's default just-in-time compiler. It is considered production-ready since Ruby 3.2 (source).

When using Rails credentials, you will edit the encrypted credentials for staging or production environments from time to time. To...

While the main goal always is to prevent long-running queries in the first place, automatic timeouts can serve as...

The ActiveSupport::BroadcastLogger allows you to log to multiple sinks. You know this behavior from from the rails server command...

Terser is a really good minifier ("compressor") for JavaScript code. I'm often surprised by the thoughtfulness of its compressed...

makandra dev

While most Rails Apps are tied to at least one external REST API, machine-to-machine communication via GraphQL is...

Some rubygems come in platform-specific versions (i.e. "x86_64-linux") in addition to the usual "ruby" platform. This is...

Using Capistrano, we usually have some array configurations in the config/deploy.rb file, like set :linked_files, %w[config/database.yml], so in...

If you are using the routing-filter gem in your Rails 7.1 app for managing URL segments for locales or...

What is makandra cards? We are makandra, a team of 60 web developers, DevOps and UI/UX experts from Augsburg, Germany...

makandra dev

There are two ways a logout in SAML can happen: Service Provider (SP) initiated and Identity Provider (IDP) initiated logout...

Developing or debugging SAML functionality can be a hassle, especially when you need to go back and forth with someone...