Currently we often use geordi to run cucumber and rspec tests. Geordi takes care of installing a matching chromedriver for...
In Rails 7.2. the feature ActiveRecord.after_all_transactions_commit was added, for code that may run either inside or outside...
In Rails 7.2 the new default for config.action_dispatch.show_exceptions is rescuable. :rescuable: It will show a Rails error page in...
Frontend performance and user experience are orthogonal to feature development. If care is not taken, adding features usually degrades frontend...
Modern CSS offers the field-sizing property to allow elements to automatically adjust size (width and/or height) to fit their...
You can report CSP violations to Sentry. Within config/initializers/content_security_policy.rb: Rails.application.configure do config.content_security_policy do |policy| # Settings for the policy...
If you want to build a small CLI application, that supports more advanced inputs than gets, I recommend using the...
We usually ship applications that self-host webfonts to comply with GDPR. Many popular web fonts are available as NPM...
Even if you don't make any beginner mistakes like N+1 queries or missing DB indices, some requests can...
The linked article shows how to configure omniauth-multi-provider to support multiple SAML identity providers for a single Rails...
Our projects with parallel_tests and cucumber used to have a patched failure logger as the one from parallel_tests...
Interactively rebase your current branch onto main, keeping the original base commit (i.e. not rebasing onto main directly).
You can check the maximum client Redis database size in Sidekiq with this command. Sidekiq.redis { |redis| puts redis.info.fetch('maxmemory_human...
For Selenium tests, your browser starts in your local timezone, or whatever your system's environment specifies. This is usually...
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...
For long running scripts it is useful to show a indicator for the progress in the terminal. Alternatively you can...
SVG files often contain redundant information, like editor metadata or hidden elements. When esbuild handles your static assets, you can...
PostgreSQL can cosplay as a full-text search engine. It doesn't have the features or fidelity of ElasticSearch or...
When debugging slow SQL queries, it’s helpful to understand the database engine's query plan. Whenever you execute a...
Hint If you are using our opscomplete.com hosting we can set all environment variables mentioned below for your deployment on...
The new params.expect method in Rails 8 improves parameter filtering, addressing issues with malformed input and enhancing security. It provides...
Also see the list of IRB commands. Switching the context Changes the "default receiver" of expressions. Can be used to...
Rails slightly changed the fragment cache implementation from Rails 7.0 to Rails 7.1. Unfortunately, this is incompatible with how Haml...