The Ruby and Rails community linklog
Made a library? Written a blog post? Found a useful tutorial? Share it with the Ruby community here or just enjoy what everyone else has found!
Submit a post
Post Preview
Note: Only the first pargraph is shown on the front page and overly long paragraphs may be broken up.
Singleton Pattern
Learn how to implement the Singleton pattern in Ruby: built-in module, manual approach, thread safety, the class variable trap, and dependency injection. [more inside]
Building a map rendering engine in Rails without external APIs.
→ No rate limits → No usage-based pricing → Full data control [more inside]
Wise Testing: What to Test (and Ignore) as a Solo Rails Developer
Solo founders fail for a completely preventable reason. It’s not because their idea was bad, and it’s… [more inside]
Remembering Piotr "chastell" Szotkowski
More than 8 months later, I finally managed to put some thoughts about the passing of my dear friend Piotr into a post: Remembering Piotr “chastell” Szotkowski>
🗺️ Introducing MapView: Server-Side Map Rendering for Rails
No more external APIs. No more rate limits. Generate maps directly from your Ruby server. [more inside]
Stop AI Spaghetti: Enforcing Rails Architecture in 2026
We are fully in the era of autonomous coding. If you use tools like Cursor, Windsurf, or Copilot… [more inside]
How to Fix N+1 Queries in Rails Like a Pro
There are Rails applications that run incredibly fast on a developer’s laptop, but the moment they… [more inside]
Introducing ractor_queue: A Shared Queue for Ruby Ractors
This post introduces ractor_queue v0.1.0, a bounded, lock-free, Multi-Producer Multi-Consumer (MPMC) queue that is always Ractor.shareable?. It is the missing primitive for building Ractor-based pipelines, worker pools, and concurrent data processing in Ruby. [more inside]
llm.rb v4.13.0 released
llm.rb is a runtime for building AI systems that integrate directly with your application. It is not just an API wrapper. It provides a unified execution model for providers, tools, MCP servers, streaming, schemas, files, and state. See the CHANGELOG this release.
Exploring a less common area in Ruby: geospatial + map rendering.
Built a small stack to turn GeoJSON → maps server-side (Rails-friendly). Feels like there’s still a lot of unexplored space here. [more inside]
Building a World-Class Search Engine in Rails with Searchkick
Stop Using SQL LIKE: A Step-by-Step Guide to Elasticsearch in Rails When you build a… [more inside]
Mastering Regular Expressions in Ruby
Regular expressions (regex) are powerful tools for pattern matching and text manipulation
re2 2.27.0: concurrent matching without the GVL
A new version of the Ruby bindings to RE2, a “fast, safe, thread-friendly alternative to backtracking regular expression engines like those used in PCRE, Perl, and Python” is now out and releases the Ruby Global VM Lock when performing matches. [more inside]
The Easiest Way to Add Drag and Drop to Your Rails App
Building Drag and Drop in Rails 8 with SortableJS and Importmaps Very often I find myself… [more inside]
llm.rb v4.12.0 released
llm.rb v4.12.0 has been released. Check the CHANGELOG for details.
🗺️ MapView: Static maps for Rails. No JavaScript. No frontend. Just Ruby.
Render beautiful GIS maps directly from your views using libgd-gis + GeoJSON. [more inside]
AdonisJS vs Ruby on Rails: Which MVC Framework Wins?
Very often I see JavaScript developers getting tired of building backend APIs with Express.js…. [more inside]
Rabarber v6: Major Update for the Rails Authorization Gem
Rabarber, a role-based authorization gem for Rails, releases v6.0.0. The new version finalizes the API cleanup started in v5 and reworks the caching mechanism to improve reliability and fix a bug that prevented Rabarber from working correctly with Memcached.
Practical CSS: simplifying UI code with pseudo-classes
When a small UI interaction gets tricky, it’s easy for Stimulus/JS to end up full of class toggling that’s really just presentation logic. This article is for that exact situation: it walks through a real tag-input widget and shows which CSS pseudo-classes can handle states like “empty,” “single item,” or “show/hide controls,” so your JavaScript can stay focused on behavior. Practical CSS: simplifying UI code with pseudo-classes
Tired of heavy map libraries? We were too.
MapView generates static PNG maps from Rails—no JavaScript bloat, no frontend complexity. ✅ Pure Ruby ✅ PostgreSQL/PostGIS ready ✅ Lightning fast rendering [more inside]
The Git Commands I Run Before Reading Any Code
Five git one-liners I run on every new codebase before opening a file. Churn hotspots, bus factor, bug clusters, commit velocity, and crisis patterns. The post covers what the output actually means and how I use it to decide where to start reading. Framework-agnostic, works on any repo. [more inside]
Become a Founding Sponsor of the Ruby Users Forum
We’re building the Ruby Users Forum, a growing community focused on knowledge sharing, collaboration, and continuous learning. [more inside]
DragonRuby Game Toolkit lets you write commercial games in Ruby
DragonRuby Game Toolkit lets you write commercial games in Ruby that run on: ✅ Switch, PS5, Xbox ✅ Steam Deck ✅ iOS, Android, Web ✅ Raspberry Pi [more inside]
The Ultimate Guide to Universal Linux Apps: Snap, Flatpak, and AppImage
Very often I find myself remembering the “bad old days” of Linux. If you wanted to install a simple… [more inside]