<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>RubyFlow</title>
    <description>The Ruby and Rails community linklog</description>
    <link>https://rubyflow.com</link>
    <item>
      <title>From a talk at Ruby SUR to a full write-up:</title>
      <description> &lt;a href="https://rubystacknews.com/2026/04/20/generating-thousands-of-maps-per-minute-in-ruby/" rel="nofollow"&gt;https://rubystacknews.com/2026/04/20/generating-thousands-of-maps-per-minute-in-ruby/&lt;/a&gt;
Building maps in Ruby, without external tools.
I explain the approach behind ruby-libgd + libgd-gis 👇
#ruby #gis #opensource </description>
      <pubDate>Tue, 21 Apr 2026 02:40:18 +0000</pubDate>
      <link>https://rubyflow.com/p/6v1kxp-from-a-talk-at-ruby-sur-to-a-full-write-up</link>
      <guid>https://rubyflow.com/p/6v1kxp-from-a-talk-at-ruby-sur-to-a-full-write-up</guid>
    </item>
    <item>
      <title>How Turbo 8 Morphing Makes Rails Frontend Development Feel Like Magic</title>
      <description> When Hotwire first came out, it felt like a superpower. We could finally update our web pages without… </description>
      <pubDate>Mon, 20 Apr 2026 23:22:50 +0000</pubDate>
      <link>https://rubyflow.com/p/1h7mpd-how-turbo-8-morphing-makes-rails-frontend-development-feel-like-magic</link>
      <guid>https://rubyflow.com/p/1h7mpd-how-turbo-8-morphing-makes-rails-frontend-development-feel-like-magic</guid>
    </item>
    <item>
      <title>How to build a platform of agents</title>
      <description> &lt;a href="https://0x1eef.github.io/posts/how-to-build-a-platform-of-agents/" rel="nofollow"&gt;This post&lt;/a&gt; introduces a pattern where a user can have many agents, and an agent can be specialized in a particular domain. An agent can have tools, and even skills. Its a powerful technique for building serious AI applications. Based on ActiveRecord. </description>
      <pubDate>Mon, 20 Apr 2026 22:38:56 +0000</pubDate>
      <link>https://rubyflow.com/p/v79bx8-how-to-build-a-platform-of-agents</link>
      <guid>https://rubyflow.com/p/v79bx8-how-to-build-a-platform-of-agents</guid>
    </item>
    <item>
      <title>How to Port Legacy Rails Applications to Propshaft</title>
      <description> Over the years, I’ve dealt with my fair share of Sprockets problems and then some - I do not, I must admit, mourn its replacement as a default asset pipeline for Rails. </description>
      <pubDate>Mon, 20 Apr 2026 20:30:53 +0000</pubDate>
      <link>https://rubyflow.com/p/qw9d56-how-to-port-legacy-rails-applications-to-propshaft</link>
      <guid>https://rubyflow.com/p/qw9d56-how-to-port-legacy-rails-applications-to-propshaft</guid>
    </item>
    <item>
      <title>Let It Slop: A New Approach to Modularity in the Age of AI Code Generation</title>
      <description> A practice-backed proposal on how we should rethink modularity in Rails applications in the time of code generation tools. With a look back into why and how we did modularity in programming up until now. This is my lightning talk from Wroclove.rb conference turned into a full blogpost. </description>
      <pubDate>Mon, 20 Apr 2026 13:56:09 +0000</pubDate>
      <link>https://rubyflow.com/p/alji4y-let-it-slop-a-new-approach-to-modularity-in-the-age-of-ai-code-generation</link>
      <guid>https://rubyflow.com/p/alji4y-let-it-slop-a-new-approach-to-modularity-in-the-age-of-ai-code-generation</guid>
    </item>
    <item>
      <title>♻️ Re-sharing an old demo : still relevant. Ruby-LibGD 3D</title>
      <description> &lt;a href="https://rubystacknews.com/2026/02/06/a-quick-demo-of-ruby-libgd-v0-2-4/" rel="nofollow"&gt;https://rubystacknews.com/2026/02/06/a-quick-demo-of-ruby-libgd-v0-2-4/&lt;/a&gt; </description>
      <pubDate>Mon, 20 Apr 2026 02:57:00 +0000</pubDate>
      <link>https://rubyflow.com/p/p0do9k--re-sharing-an-old-demo-still-relevant-ruby-libgd-3d</link>
      <guid>https://rubyflow.com/p/p0do9k--re-sharing-an-old-demo-still-relevant-ruby-libgd-3d</guid>
    </item>
    <item>
      <title>llm.rb continues to innovate and push boundaries</title>
      <description> &lt;a href="https://github.com/llmrb/llm.rb#readme" rel="nofollow"&gt;llm.rb&lt;/a&gt; - the most capable AI runtime for Ruby - has added skills support. The same skills you might know and love from Claude, or Codex. They’re now available to the Ruby runtime through &lt;a href="https://github.com/llmrb/llm.rb#readme" rel="nofollow"&gt;llm.rb&lt;/a&gt; and open up exciting possibilities. </description>
      <pubDate>Mon, 20 Apr 2026 02:52:33 +0000</pubDate>
      <link>https://rubyflow.com/p/8yuebo-llmrb-continues-to-innovate-and-push-boundaries</link>
      <guid>https://rubyflow.com/p/8yuebo-llmrb-continues-to-innovate-and-push-boundaries</guid>
    </item>
    <item>
      <title>Railsmaxxing, or hidden Rails gems</title>
      <description> 58 Rails built-ins worth knowing: &lt;code&gt;Preloader&lt;/code&gt;, &lt;code&gt;generates_token_for&lt;/code&gt;, &lt;code&gt;resolve&lt;/code&gt; in routes, &lt;code&gt;ActionController::Renderer&lt;/code&gt;, &lt;code&gt;after_all_transactions_commit&lt;/code&gt;, and more. Plus 3 “anti-gems”: features with clean names that may bite when you adopt them. </description>
      <pubDate>Sun, 19 Apr 2026 23:47:18 +0000</pubDate>
      <link>https://rubyflow.com/p/e65sw0-railsmaxxing-or-hidden-rails-gems</link>
      <guid>https://rubyflow.com/p/e65sw0-railsmaxxing-or-hidden-rails-gems</guid>
    </item>
    <item>
      <title>How to Add a Visual Page Builder to Your Rails App in 10 Minutes</title>
      <description> The Quickest Way to Build a Drag-and-Drop Landing Page Builder in Rails 8   Often when I am… </description>
      <pubDate>Sun, 19 Apr 2026 23:22:50 +0000</pubDate>
      <link>https://rubyflow.com/p/ekck03-how-to-add-a-visual-page-builder-to-your-rails-app-in-10-minutes</link>
      <guid>https://rubyflow.com/p/ekck03-how-to-add-a-visual-page-builder-to-your-rails-app-in-10-minutes</guid>
    </item>
    <item>
      <title>ruby-crewai: The missing Ruby SDK for CrewAI's multi-agent AI API</title>
      <description> CrewAI is one of the fastest-growing multi-agent AI frameworks right 
now, but it’s Python-only. There’s no official Ruby SDK, which means 
Rails developers have been left out. </description>
      <pubDate>Sun, 19 Apr 2026 14:16:25 +0000</pubDate>
      <link>https://rubyflow.com/p/dlfc0c-ruby-crewai-the-missing-ruby-sdk-for-crewais-multi-agent-ai-api</link>
      <guid>https://rubyflow.com/p/dlfc0c-ruby-crewai-the-missing-ruby-sdk-for-crewais-multi-agent-ai-api</guid>
    </item>
    <item>
      <title>rspec-mockbidden: Forbid Unwanted RSpec Mocks</title>
      <description> Utility gem for RSpec to forbid mocking methods on objects/classes/modules, evaluated at test runtime: &lt;a href="https://lovro-bikic.github.io/rspec-mockbidden/" rel="nofollow"&gt;https://lovro-bikic.github.io/rspec-mockbidden/&lt;/a&gt; </description>
      <pubDate>Sun, 19 Apr 2026 09:49:36 +0000</pubDate>
      <link>https://rubyflow.com/p/49dt7l-rspec-mockbidden-forbid-unwanted-rspec-mocks</link>
      <guid>https://rubyflow.com/p/49dt7l-rspec-mockbidden-forbid-unwanted-rspec-mocks</guid>
    </item>
    <item>
      <title>llm.rb is probably the most capable AI runtime in Ruby today</title>
      <description> Did you know that &lt;a href="https://github.com/llmrb/llm.rb#readme" rel="nofollow"&gt;llm.rb&lt;/a&gt; is the most capable AI runtime in Ruby right now? It can do things other libraries just can’t, and it can do those things today. Request canceltion? llm.rb has you covered. Turn any ActiveRecord model into an agent? llm.rb has you covered. MCP? llm.rb has you covered. Built-in tracer and observaility support? llm.rb has you covered. And much more. </description>
      <pubDate>Sun, 19 Apr 2026 04:40:17 +0000</pubDate>
      <link>https://rubyflow.com/p/fzqjzv-llmrb-is-probably-the-most-capable-ai-runtime-in-ruby-today</link>
      <guid>https://rubyflow.com/p/fzqjzv-llmrb-is-probably-the-most-capable-ai-runtime-in-ruby-today</guid>
    </item>
    <item>
      <title>How I Built a Native Android App with Zero Kotlin Experience</title>
      <description> Turning a Rails App into an Android App: Testing Hotwire Native   Recently I wanted to test… </description>
      <pubDate>Sat, 18 Apr 2026 23:22:49 +0000</pubDate>
      <link>https://rubyflow.com/p/8qyrxq-how-i-built-a-native-android-app-with-zero-kotlin-experience</link>
      <guid>https://rubyflow.com/p/8qyrxq-how-i-built-a-native-android-app-with-zero-kotlin-experience</guid>
    </item>
    <item>
      <title>llm_cost_tracker 0.1.2: self-hosted LLM API cost tracking for Ruby/Rails</title>
      <description> I released my first Ruby gem: &lt;code&gt;llm_cost_tracker&lt;/code&gt;. </description>
      <pubDate>Sat, 18 Apr 2026 12:22:11 +0000</pubDate>
      <link>https://rubyflow.com/p/otr808-llmcosttracker-012-self-hosted-llm-api-cost-tracking-for-rubyrails</link>
      <guid>https://rubyflow.com/p/otr808-llmcosttracker-012-self-hosted-llm-api-cost-tracking-for-rubyrails</guid>
    </item>
    <item>
      <title>Making Sense of JavaScript in Rails: Webpack, Rollup, esbuild, and Importmaps</title>
      <description> Very often I find myself talking to developers who are incredibly confused by the JavaScript… </description>
      <pubDate>Fri, 17 Apr 2026 23:21:48 +0000</pubDate>
      <link>https://rubyflow.com/p/8oumwv-making-sense-of-javascript-in-rails-webpack-rollup-esbuild-and-importmaps</link>
      <guid>https://rubyflow.com/p/8oumwv-making-sense-of-javascript-in-rails-webpack-rollup-esbuild-and-importmaps</guid>
    </item>
    <item>
      <title>llm.rb v4.17.0 has been released</title>
      <description> &lt;a href="https://github.com/llmrb/llm.rb#readme" rel="nofollow"&gt;llm.rb&lt;/a&gt; has been released. Notable features in this release are Sequel and ActiveRecord support. Turn any ActiveRecord model into an LLM-capable model. It only requires one table. Same is true for Sequel. See &lt;a href="https://0x1eef.github.io/x/llm.rb/file.CHANGELOG.html" rel="nofollow"&gt;CHANGELOG&lt;/a&gt; for details. </description>
      <pubDate>Fri, 17 Apr 2026 20:12:16 +0000</pubDate>
      <link>https://rubyflow.com/p/fox8o6-llmrb-v4170-has-been-released</link>
      <guid>https://rubyflow.com/p/fox8o6-llmrb-v4170-has-been-released</guid>
    </item>
    <item>
      <title>On Friday, I want to revisit this important milestone in my project. </title>
      <description> &lt;a href="https://rubystacknews.com/2026/01/09/ruby-can-draw-cities-now/" rel="nofollow"&gt;https://rubystacknews.com/2026/01/09/ruby-can-draw-cities-now/&lt;/a&gt; </description>
      <pubDate>Fri, 17 Apr 2026 14:02:42 +0000</pubDate>
      <link>https://rubyflow.com/p/oiqafn-on-friday-i-want-to-revisit-this-important-milestone-in-my-project-</link>
      <guid>https://rubyflow.com/p/oiqafn-on-friday-i-want-to-revisit-this-important-milestone-in-my-project-</guid>
    </item>
    <item>
      <title>How to Build a Custom Affiliate System in Ruby on Rails</title>
      <description> When you are launching a new SaaS, getting your first users is the hardest part. One of the best ways… </description>
      <pubDate>Thu, 16 Apr 2026 23:14:46 +0000</pubDate>
      <link>https://rubyflow.com/p/cs9gkc-how-to-build-a-custom-affiliate-system-in-ruby-on-rails</link>
      <guid>https://rubyflow.com/p/cs9gkc-how-to-build-a-custom-affiliate-system-in-ruby-on-rails</guid>
    </item>
    <item>
      <title>RubyKaigi 2026 launches next week.</title>
      <description> &lt;a href="https://rubystacknews.com/2026/04/15/rubykaigi-2026-a-reminder-of-what-innovation-actually-looks-like/" rel="nofollow"&gt;https://rubystacknews.com/2026/04/15/rubykaigi-2026-a-reminder-of-what-innovation-actually-looks-like/&lt;/a&gt; </description>
      <pubDate>Thu, 16 Apr 2026 02:30:02 +0000</pubDate>
      <link>https://rubyflow.com/p/cdpxm5-rubykaigi-2026-launches-next-week</link>
      <guid>https://rubyflow.com/p/cdpxm5-rubykaigi-2026-launches-next-week</guid>
    </item>
    <item>
      <title>It Looks Like Ruby, But It’s Not: How to Understand Elixir</title>
      <description> If you write Ruby, you will eventually get curious about Elixir. The creator of Elixir, José Valim,… </description>
      <pubDate>Wed, 15 Apr 2026 23:17:07 +0000</pubDate>
      <link>https://rubyflow.com/p/c7s36u-it-looks-like-ruby-but-its-not-how-to-understand-elixir</link>
      <guid>https://rubyflow.com/p/c7s36u-it-looks-like-ruby-but-its-not-how-to-understand-elixir</guid>
    </item>
    <item>
      <title>🚨 I stopped trusting online QR generators… so I built my own in Ruby.</title>
      <description> &lt;a href="https://rubystacknews.com/2026/04/15/create-qr-codes-from-scratch-with-ruby-ruby-libgd-and-rqrcode/" rel="nofollow"&gt;https://rubystacknews.com/2026/04/15/create-qr-codes-from-scratch-with-ruby-ruby-libgd-and-rqrcode/&lt;/a&gt; </description>
      <pubDate>Wed, 15 Apr 2026 12:52:47 +0000</pubDate>
      <link>https://rubyflow.com/p/el3b7u--i-stopped-trusting-online-qr-generators-so-i-built-my-own-in-ruby</link>
      <guid>https://rubyflow.com/p/el3b7u--i-stopped-trusting-online-qr-generators-so-i-built-my-own-in-ruby</guid>
    </item>
    <item>
      <title>Pundit vs CanCanCan vs Action Policy: Which Rails Auth Gem Wins?</title>
      <description> Sometimes I find myself starting a new Rails project, and almost immediately, I hit a wall: User… </description>
      <pubDate>Tue, 14 Apr 2026 23:17:30 +0000</pubDate>
      <link>https://rubyflow.com/p/ii3mz9-pundit-vs-cancancan-vs-action-policy-which-rails-auth-gem-wins</link>
      <guid>https://rubyflow.com/p/ii3mz9-pundit-vs-cancancan-vs-action-policy-which-rails-auth-gem-wins</guid>
    </item>
    <item>
      <title>Ruby Memes 2026-04-14</title>
      <description> “Oh Ruby, you’re the most elegant and beautiful language ever! I just love you so much…” &lt;a href="https://andymaleh.blogspot.com/2026/04/ruby-memes-2026-04-14-ruby-hypocrite.html" rel="nofollow"&gt;https://andymaleh.blogspot.com/2026/04/ruby-memes-2026-04-14-ruby-hypocrite.html&lt;/a&gt; </description>
      <pubDate>Tue, 14 Apr 2026 17:40:27 +0000</pubDate>
      <link>https://rubyflow.com/p/fhfsdf-ruby-memes-2026-04-14</link>
      <guid>https://rubyflow.com/p/fhfsdf-ruby-memes-2026-04-14</guid>
    </item>
    <item>
      <title>A different kind of tired</title>
      <description> Earlier this year I was freaked out about AI. I’ve spent the months since using it constantly, on every project, at every stage. I expected to feel replaced, or at least unsettled. Instead, something underneath the work shifted. </description>
      <pubDate>Tue, 14 Apr 2026 15:32:28 +0000</pubDate>
      <link>https://rubyflow.com/p/90awxw-a-different-kind-of-tired</link>
      <guid>https://rubyflow.com/p/90awxw-a-different-kind-of-tired</guid>
    </item>
    <item>
      <title>Ruby Users Forum ❤️ Open Source </title>
      <description> We’re collaborating with Open Source maintainers to bring their project discussions to the forum. </description>
      <pubDate>Tue, 14 Apr 2026 13:26:43 +0000</pubDate>
      <link>https://rubyflow.com/p/x6f2aj-ruby-users-forum-open-source-</link>
      <guid>https://rubyflow.com/p/x6f2aj-ruby-users-forum-open-source-</guid>
    </item>
  </channel>
</rss>
