Catching Rails Credential Drift Between Environments

Rails ships no check that your credential files declare the same keys. We built credential_parity to catch the drift before it reaches production.

rails ruby open-source

EncryptedConfiguration#key? Missing Before Rails 7.1

delegate_missing_to turns a missing predicate into a confusing ArgumentError, not a NoMethodError.

rails ruby gotchas

Requiring an ActiveSupport Leaf File Breaks on Rails 7.1

require 'active_support/x' alone raises a deprecator NoMethodError unless the parent library loads first.

rails ruby gotchas

Turbo Streams Instead of Nested Forms

When the parent already exists, you probably don't need a nested form at all

rails javascript how-to

Nested Forms in Rails 8: Life After Cocoon and Webpacker

accepts_nested_attributes_for still works. A small Stimulus controller handles the rest.

rails javascript how-to

Building a Pluggable Adapter Architecture in Ruby

How to design a gem with zero hard dependencies and user-selectable backends.

ruby docpdf open-source

Testing a Ruby Gem Across Multiple Adapter Combinations

Using Appraisal to test every combination of optional dependencies.

ruby testing

Document Conversion on Heroku

Getting LibreOffice and ImageMagick working for PDF conversion on Heroku.

ruby heroku docpdf

Introducing DocPDF

A Ruby gem for document-to-PDF conversion and watermarking, with zero hard dependencies.

ruby open-source docpdf

Rails 6, Webpacker, and the Cocoon gem

A straightforward way to use the Cocoon gem in your Rails 6 project, using Webpacker.

rails how-to