At makandra, we've built a few gems over the years. Some of these are quite popular: spreewald (> 1M downloads...
Having a unique selector for an element is useful to later select it from JavaScript or to update a fragment...
Option 1: JSON dump In config/webpack/environment.js you can get inspect environment which includes all webpack config options set for the...
If possible your code should detect features, not browsers. But sometimes you just need to sniff the browser. And when...
Just like Ruby Gems tag their version releases to the corresponding Git commit, it can be helpful to track production...
In medium-sized to large Rails applications, asset compilation can take several minutes. In order to speed up deployment, asset...
A matcher is a function that returns an object with a compare key. Usually it is registered with beforeEach...
Using the JS fullscreen API is painful because all browers use different methods and events and you need to use...
Touch devices have their own set of events like touchstart or touchmove. Because mobile browsers should also work with with...
CarrierWave comes with some RSpec matchers which will make testing more comfortable. Let's say you have an Uploader like...
You might have some trouble running a Rails LTS 2 app with MySQL 5.7. If you don't want to...
MySQL and MariaDB have an SQL mode setting which changes how MySQL behaves. The SQL mode value is comprised of...
On your local system that only hosts non-critical development data and only you have access to, you can store...
Rails offers a way to prepend (or append) view paths for the current request. This way, you can make the...
You need to update a lof gems. Make sure you don't have any version constraints in your...
Running rails server will start a local server that you can access via http://localhost:3000. When you are working...
In Spreewald 1.10.4+, nested patiently blocks are now patient. Here is an example: patiently do outer_code patiently do
Bundler::GemRequireError: There was an error while trying to load the gem 'mysql2'. Gem Load Error is: Incorrect MySQL client...
mysql> SELECT @@global.version; +------------------+ | @@global.version | +------------------+ | 5.6.30 | +------------------+ 1 row in set (0,00 sec) MySQL 5.6 Reference Manual says "BLOB and TEXT...
Use bundler > 1.15 to fix Gem::LOADED_SPECS_MUTEX (NameError). Given the following project: ruby -v ruby 1.8.7
Here is how to use Chromedriver without libraries like selenium-webdriver. This can be useful for debugging. The following example...
When installing gems, a lot of time is spent building locally installed documentation that you probably never use.
Say you want to move a git repository from one remote (perhaps Github) to another (perhaps Gitlab).
ActiveSupport::Dependencies takes care of auto-loading any classes in development. This is usually useful, but when you run into...