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.
The Solo Frontend Team: Building a UI System in Pure Ruby
The “Partial” Problem We love Rails. We love ERB. But let’s be honest: app/views is… [more inside]
Stop Killing Your Database: 5 ActiveRecord Tips for Faster Rails Apps
In this article, I want to share my journey with ActiveRecord. When I first started with Rails, I… [more inside]
Why I Ditched Manjaro for CachyOS (And I’m Never Going Back)
The “Manjaro Plateau” For years, Manjaro was my comfortable home. It was the “Arch for… [more inside]
SchnellMCP: Ruby native MCP server experience
Do you have, like me, a bunch of Ruby scripts that make your life easier? Why not make them available to your e-friends too? [more inside]
300 Days of RuboCop
It’s a story that begins with a pull request and ends with a Zen Buddhist saying:
Servactory – Typed service objects with declarative actions for Ruby
Ruby’s flexibility is great until every developer on the team writes service objects differently. After years of working with Rails codebases where each service had its own structure, error handling, and testing conventions, I built Servactory — a framework that standardizes service objects through a typed, declarative DSL. [more inside]
⚠️ A major shift in Ruby didn’t come with new syntax — it came with fewer assumptions
At RubyKaigi 2024, the Ruby core team revealed a long-term plan to shrink the traditional standard library and move functionality into default and bundled gems — a change that directly impacts dependency management, upgrades, and production stability. [more inside]
Rails apps don’t become complex because of scale
Rails apps don’t become complex because of scale — they become complex because we stop thinking the way Rails was designed to work. [more inside]
The Cost of Change in Software
Explore the philosophy behind software design: preserving changeability, measuring code friction, and balancing technical debt with over-engineering. [more inside]
Move Over Selenium: Using Playwright in Ruby
The Selenium Struggle If you’ve done any browser automation in Ruby, you know the… [more inside]
Search and Replace in PDF Tool: Effortless Text Editing in Your PDFs
A Search and Replace in PDF tool is essential for anyone who regularly edits PDFs. Whether you are a professional, student, or publisher, this tool saves time, maintains accuracy, and keeps your documents consistent.
🚀 From 30 minutes to 2 minutes: Speeding up Rails CI without rewriting tests
At Kaigi on Rails 2025, Hayato Okumoto (CTO at TwoGate) shared a practical, production-proven approach to ultra-fast CI for large Rails applications. [more inside]
The Stateful Scraper: Why Mechanize is Still Relevant
The “Overkill” Problem If you ask a developer today how to scrape a website that requires… [more inside]
Design for Developers: How to Stop Making Ugly Apps
The “Blank Page” Paralysis You have the database schema planned. You have the models… [more inside]
3 Robots walk into a room ...
I call my LLM-based service objects robots instead of agents. Why? because robots do what you tell them. Agent have agency. That means they can make choices and do whatever they want to do. Like travel agents, real-estate agents, FBI agents. Robots are machines that follow instructions. That’s what I want. My objects should follow my instructions… but what happens when you add a little bit of agency to 3 robots and put them into a room with a set of tools that allow them to communicate with eah other through shared memory, broadcast message channels and direct message channels. Then you tell all 3 robots to do the same thing? They become a self-organizing group. SOGs have agency. [more inside]
🚫 Stop checking admin? — it might be creating technical debt.
Authorization bugs are among the most dangerous issues in SaaS systems. A single mistake can expose salaries, contracts, or customer data — and destroy trust. [more inside]
Stop wasting time creating dummy files for your tests!
fake-file: A lightweight Ruby gem to effortlessly mock and generate files for your tests. I’d love to get your feedback or see your PRs!
Evaluating LLM prompts in Rails
Finding the right model and prompt for your AI feature is harder than it looks. Spreadsheets help, until they don’t. So we did something about it.
Introducing Icons: add any icon library to your Ruby app
https://railsdesigner.com/introducing-icons-gem/ Almost two years ago I published Rails Icons; now the core is extracted into a new gem for any Ruby apps: Icons [more inside]
Why Your Next Rails App Doesn't Need Nginx or Apache
The “Nginx Tax” For the last 15 years, deploying a Rails app to production involved a… [more inside]
Scraping at Warp Speed: Parallelism vs. Concurrency
The 100,000 URL Problem You’ve been tasked with scraping a massive product catalog. You… [more inside]
Test Driving Rails v1.1 (a Minitest & Fixtures book) is released
A new revision for the 1st edition of Test Driving Rails is released. Comes with database optimizations and Claude Code skills.
🚀 How a 10-Year Rails Application Finally Achieved Linear Scaling
🚀 How a 10-Year Rails Application Finally Achieved Linear Scaling — Lessons from Kaigi on Rails 2025 [more inside]
mlx-ruby: Ruby bindings for Apple’s MLX ML framework
MLX-Ruby is a native C++ extension providing full Ruby bindings for Apple’s MLX machine learning framework. It includes neural network layers, optimizers, function transforms (grad, vmap, etc.), and Metal GPU support on Apple silicon. [more inside]