<?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>Revisiting this experiment in pure Ruby GIS rendering.</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>Mon, 25 May 2026 03:58:41 +0000</pubDate>
      <link>https://rubyflow.com/p/dtyg8x-revisiting-this-experiment-in-pure-ruby-gis-rendering</link>
      <guid>https://rubyflow.com/p/dtyg8x-revisiting-this-experiment-in-pure-ruby-gis-rendering</guid>
    </item>
    <item>
      <title>n8n vs ByteChef: Which Automation Engine Should You Self-Host?</title>
      <description> Automating the “glue work” of a SaaS business is a survival skill for a solo developer. You need to… </description>
      <pubDate>Sun, 24 May 2026 18:10:51 +0000</pubDate>
      <link>https://rubyflow.com/p/scyxgk-n8n-vs-bytechef-which-automation-engine-should-you-self-host</link>
      <guid>https://rubyflow.com/p/scyxgk-n8n-vs-bytechef-which-automation-engine-should-you-self-host</guid>
    </item>
    <item>
      <title>Robert released</title>
      <description> &lt;a href="https://llmrb.github.io/robert" rel="nofollow"&gt;Robert is a native FreeBSD AI assistant&lt;/a&gt;. He can read man pages, search documentation, and help you troubleshoot. It is distributed as a 2MB standalone binary. Built with mruby, and &lt;a href="https://github.com/llmrb/llm.rb#readme" rel="nofollow"&gt;llm.rb&lt;/a&gt;. </description>
      <pubDate>Sun, 24 May 2026 14:37:14 +0000</pubDate>
      <link>https://rubyflow.com/p/1jtt6r-robert-released</link>
      <guid>https://rubyflow.com/p/1jtt6r-robert-released</guid>
    </item>
    <item>
      <title>How Rails Turns a Controller Action Into a Response</title>
      <description> Rails controller actions do not return HTTP responses directly. They perform response state through &lt;code&gt;render&lt;/code&gt;, &lt;code&gt;redirect_to&lt;/code&gt;, &lt;code&gt;head&lt;/code&gt;, or implicit rendering, and Rails turns that into status, headers, and body. </description>
      <pubDate>Sun, 24 May 2026 11:28:36 +0000</pubDate>
      <link>https://rubyflow.com/p/r5iio7-how-rails-turns-a-controller-action-into-a-response</link>
      <guid>https://rubyflow.com/p/r5iio7-how-rails-turns-a-controller-action-into-a-response</guid>
    </item>
    <item>
      <title>rails-llm v0.2.0 has been released</title>
      <description> &lt;a href="https://github.com/llmrb/rails-llm#readme" rel="nofollow"&gt;rails-llm&lt;/a&gt; provides generators and an engine for the &lt;a href="https://github.com/llmrb/llm.rb#readme" rel="nofollow"&gt;llm.rb&lt;/a&gt; runtime inside Ruby on Rails. The engine includes a chat interface, and the generators take care of migrations &amp;amp; models. </description>
      <pubDate>Sun, 24 May 2026 06:39:15 +0000</pubDate>
      <link>https://rubyflow.com/p/c7vk8b-rails-llm-v020-has-been-released</link>
      <guid>https://rubyflow.com/p/c7vk8b-rails-llm-v020-has-been-released</guid>
    </item>
    <item>
      <title>I shipped a mostly AI-generated Ruby gem, got roasted, and rethought the whole job</title>
      <description> &lt;a href="https://dev.to/sergii-khomenko/writing-code-got-cheap-being-responsible-for-it-didnt-what-shipping-an-ai-generated-gem-taught-1fci" rel="nofollow"&gt;https://dev.to/sergii-khomenko/writing-code-got-cheap-being-responsible-for-it-didnt-what-shipping-an-ai-generated-gem-taught-1fci&lt;/a&gt; </description>
      <pubDate>Sun, 24 May 2026 04:33:52 +0000</pubDate>
      <link>https://rubyflow.com/p/pawiv4-i-shipped-a-mostly-ai-generated-ruby-gem-got-roasted-and-rethought-the-whole-job</link>
      <guid>https://rubyflow.com/p/pawiv4-i-shipped-a-mostly-ai-generated-ruby-gem-got-roasted-and-rethought-the-whole-job</guid>
    </item>
    <item>
      <title>Distributed Uniqueness: Implementing Twitter Snowflake IDs in Rails 8</title>
      <description> When you run rails generate model, Rails defaults to using a standard auto-incrementing integer for… </description>
      <pubDate>Sat, 23 May 2026 17:50:33 +0000</pubDate>
      <link>https://rubyflow.com/p/xrs8j4-distributed-uniqueness-implementing-twitter-snowflake-ids-in-rails-8</link>
      <guid>https://rubyflow.com/p/xrs8j4-distributed-uniqueness-implementing-twitter-snowflake-ids-in-rails-8</guid>
    </item>
    <item>
      <title>🎙️ Remote Ruby – Blue Ridge Ruby Insights &amp; Experiences</title>
      <description> New episode is out. David recaps Blue Ridge Ruby and talks about coming back motivated to contribute more to open source, which leads into a broader discussion on why smaller single-track Ruby conferences create better hallway conversations, networking, and lightning talks. We also get into real-world Rails and Stripe lessons covering workshop prep, validation decisions, webhook recovery, subscription edge cases, and the growing complexity of payment integrations.
 
&lt;a href="https://www.buzzsprout.com/2260490/episodes/19173186" rel="nofollow"&gt;Listen now&lt;/a&gt; </description>
      <pubDate>Sat, 23 May 2026 05:13:59 +0000</pubDate>
      <link>https://rubyflow.com/p/sm58ii--remote-ruby-blue-ridge-ruby-insights-experiences</link>
      <guid>https://rubyflow.com/p/sm58ii--remote-ruby-blue-ridge-ruby-insights-experiences</guid>
    </item>
    <item>
      <title>Ruby Beyond the Server</title>
      <description> A collection of the various Ruby libraries and execution environments for building desktop, mobile, terminal, game, and browser applications. </description>
      <pubDate>Fri, 22 May 2026 15:05:50 +0000</pubDate>
      <link>https://rubyflow.com/p/5i9u9r-ruby-beyond-the-server</link>
      <guid>https://rubyflow.com/p/5i9u9r-ruby-beyond-the-server</guid>
    </item>
    <item>
      <title>Inside Ruby’s Object Model 🔍</title>
      <description> &lt;a href="https://rubystacknews.com/2026/05/21/inside-rubys-object-model/" rel="nofollow"&gt;https://rubystacknews.com/2026/05/21/inside-rubys-object-model/&lt;/a&gt; </description>
      <pubDate>Fri, 22 May 2026 02:13:15 +0000</pubDate>
      <link>https://rubyflow.com/p/lmy8ca-inside-rubys-object-model-</link>
      <guid>https://rubyflow.com/p/lmy8ca-inside-rubys-object-model-</guid>
    </item>
    <item>
      <title>The Art of Deleting Code: Why Your One-Man App Should Be Shrinking</title>
      <description> Most developers think that “progress” means adding lines of code. We feel good when we finish a new… </description>
      <pubDate>Thu, 21 May 2026 22:06:29 +0000</pubDate>
      <link>https://rubyflow.com/p/qm4yed-the-art-of-deleting-code-why-your-one-man-app-should-be-shrinking</link>
      <guid>https://rubyflow.com/p/qm4yed-the-art-of-deleting-code-why-your-one-man-app-should-be-shrinking</guid>
    </item>
    <item>
      <title>Connect an LLM to man(1) and apropos(1)</title>
      <description> &lt;a href="https://0x1eef.github.io/posts/how-to-build-a-man-page-agent/" rel="nofollow"&gt;I wrote a post&lt;/a&gt; as an introduction to developing your own AI agent that is backed up an ActiveRecord model. The agent can search and read man pages, and provide answers from those sources rather than training data. </description>
      <pubDate>Thu, 21 May 2026 20:51:42 +0000</pubDate>
      <link>https://rubyflow.com/p/y6zlwt-connect-an-llm-to-man1-and-apropos1</link>
      <guid>https://rubyflow.com/p/y6zlwt-connect-an-llm-to-man1-and-apropos1</guid>
    </item>
    <item>
      <title>Generative UI in Rails with RubyLLM</title>
      <description> A walk through the design choices for showing rich UI in an LLM chat app instead of plain text bubbles. Tools, schemas, and a tiny gem for generative UI on top of RubyLLM.
&lt;a href="https://msg.samsonov.io/2026-05-21-generative-ui-ruby-llm/" rel="nofollow"&gt;https://msg.samsonov.io/2026-05-21-generative-ui-ruby-llm/&lt;/a&gt; </description>
      <pubDate>Thu, 21 May 2026 15:49:42 +0000</pubDate>
      <link>https://rubyflow.com/p/9zes40-generative-ui-in-rails-with-rubyllm</link>
      <guid>https://rubyflow.com/p/9zes40-generative-ui-in-rails-with-rubyllm</guid>
    </item>
    <item>
      <title>💎 llm_cost_tracker 0.11.0 — self-hosted LLM cost ledger for Rails</title>
      <description> &lt;a href="https://github.com/sergey-homenko/llm_cost_tracker" rel="nofollow"&gt;https://github.com/sergey-homenko/llm_cost_tracker&lt;/a&gt; </description>
      <pubDate>Thu, 21 May 2026 14:51:15 +0000</pubDate>
      <link>https://rubyflow.com/p/r4jtev--llmcosttracker-0110-self-hosted-llm-cost-ledger-for-rails</link>
      <guid>https://rubyflow.com/p/r4jtev--llmcosttracker-0110-self-hosted-llm-cost-ledger-for-rails</guid>
    </item>
    <item>
      <title>Just published a visual cheat sheet for ruby-libgd 🔥</title>
      <description> &lt;a href="https://rubystacknews.com/2026/05/20/ruby-libgd-cheat-sheet-building-native-graphics-pipelines-in-ruby/" rel="nofollow"&gt;https://rubystacknews.com/2026/05/20/ruby-libgd-cheat-sheet-building-native-graphics-pipelines-in-ruby/&lt;/a&gt; </description>
      <pubDate>Thu, 21 May 2026 02:46:14 +0000</pubDate>
      <link>https://rubyflow.com/p/t6lfq5-just-published-a-visual-cheat-sheet-for-ruby-libgd-</link>
      <guid>https://rubyflow.com/p/t6lfq5-just-published-a-visual-cheat-sheet-for-ruby-libgd-</guid>
    </item>
    <item>
      <title>The Vibe Coder’s Survival Guide: Concepts You Can’t Just Prompt Away</title>
      <description> We are living in a wild time for software development. With tools like Cursor, Windsurf, and ChatGPT,… </description>
      <pubDate>Wed, 20 May 2026 23:17:08 +0000</pubDate>
      <link>https://rubyflow.com/p/xa58c4-the-vibe-coders-survival-guide-concepts-you-cant-just-prompt-away</link>
      <guid>https://rubyflow.com/p/xa58c4-the-vibe-coders-survival-guide-concepts-you-cant-just-prompt-away</guid>
    </item>
    <item>
      <title>The Solo Developer's Secret: Why Boring Tech is More Profitable</title>
      <description> Every morning, I see the same thing on my Twitter feed or the GitHub Trending page. A new Ruby gem is… </description>
      <pubDate>Wed, 20 May 2026 22:06:31 +0000</pubDate>
      <link>https://rubyflow.com/p/6tp29b-the-solo-developers-secret-why-boring-tech-is-more-profitable</link>
      <guid>https://rubyflow.com/p/6tp29b-the-solo-developers-secret-why-boring-tech-is-more-profitable</guid>
    </item>
    <item>
      <title>I built an APM tool for Rails apps – DeadBro</title>
      <description> I got tired of the existing APM options being overkill for smaller Rails projects, so I built &lt;a href="https://deadbro.com" rel="nofollow"&gt;DeadBro&lt;/a&gt;. It detects N+1 queries, tracks errors with full stack traces, and sends alerts via Slack or Pushover when things break. Real-time dashboards, multi-app and multi-environment support, installs via the &lt;code&gt;dead_bro&lt;/code&gt; gem. </description>
      <pubDate>Wed, 20 May 2026 21:25:54 +0000</pubDate>
      <link>https://rubyflow.com/p/3f1n09-i-built-an-apm-tool-for-rails-apps-deadbro</link>
      <guid>https://rubyflow.com/p/3f1n09-i-built-an-apm-tool-for-rails-apps-deadbro</guid>
    </item>
    <item>
      <title>Everyone Deserves a Wiki: Bridgetown 2.2 is Here</title>
      <description> Springtime in Portland is always a true delight, and &lt;a href="https://www.bridgetownrb.com/release/everyone-deserves-a-wiki-bridgetown-2-2/" rel="nofollow"&gt;the perfect backdrop for our newest release of Bridgetown&lt;/a&gt;, version 2.2 “Verdant River City“. Featuring “wikilinks” in Markdown, support for Falcon the highly concurrent Ruby web application server, performance enhancements, bugfixes, new sponsorship opportunities, and more. </description>
      <pubDate>Wed, 20 May 2026 18:20:46 +0000</pubDate>
      <link>https://rubyflow.com/p/32y6vm-everyone-deserves-a-wiki-bridgetown-22-is-here</link>
      <guid>https://rubyflow.com/p/32y6vm-everyone-deserves-a-wiki-bridgetown-22-is-here</guid>
    </item>
    <item>
      <title>ActiveHarness gem has been released</title>
      <description> &lt;a href="https://github.com/the-teacher/active_harness" rel="nofollow"&gt;ActiveHarness&lt;/a&gt; — a Ruby framework for building production-ready AI agents with multiple LLM providers, lifecycle hooks, and a Rails-friendly DSL. Made for Rails but works in plain Ruby too. </description>
      <pubDate>Wed, 20 May 2026 12:42:57 +0000</pubDate>
      <link>https://rubyflow.com/p/fxyjo6-activeharness-gem-has-been-released</link>
      <guid>https://rubyflow.com/p/fxyjo6-activeharness-gem-has-been-released</guid>
    </item>
    <item>
      <title>stimulus_grid_rails: user editable data grid for Rails + Hotwire</title>
      <description> I just released stimulus_grid_rails v0.1.0 — Rails + Hotwire bindings for a server-driven, multi-user editable data grid over Turbo Streams and Action Cable. No React, no client-side grid framework, no JS build step.   </description>
      <pubDate>Wed, 20 May 2026 08:01:48 +0000</pubDate>
      <link>https://rubyflow.com/p/lmq2y7-stimulusgridrails-user-editable-data-grid-for-rails-hotwire</link>
      <guid>https://rubyflow.com/p/lmq2y7-stimulusgridrails-user-editable-data-grid-for-rails-hotwire</guid>
    </item>
    <item>
      <title>Duck Typing and Inheritance in Ruby</title>
      <description> When to reach for duck typing and when for inheritance in Ruby. Template Method, hook messages, and the signals that point to a hidden abstraction. </description>
      <pubDate>Wed, 20 May 2026 05:11:05 +0000</pubDate>
      <link>https://rubyflow.com/p/ri5rk7-duck-typing-and-inheritance-in-ruby</link>
      <guid>https://rubyflow.com/p/ri5rk7-duck-typing-and-inheritance-in-ruby</guid>
    </item>
    <item>
      <title>Inside Ruby’s net/http 🔍</title>
      <description> &lt;a href="https://rubystacknews.com/2026/05/19/inside-rubys-net-http-exploring-the-networking-engine-behind-ruby-apis/" rel="nofollow"&gt;https://rubystacknews.com/2026/05/19/inside-rubys-net-http-exploring-the-networking-engine-behind-ruby-apis/&lt;/a&gt; </description>
      <pubDate>Wed, 20 May 2026 02:27:54 +0000</pubDate>
      <link>https://rubyflow.com/p/xuykt4-inside-rubys-nethttp-</link>
      <guid>https://rubyflow.com/p/xuykt4-inside-rubys-nethttp-</guid>
    </item>
    <item>
      <title>The Perfect Zsh Setup: Oh My Zsh on CachyOS/Arch</title>
      <description> If you want a terminal that tells you if a command is valid, predicts what you’re about to type, and… </description>
      <pubDate>Tue, 19 May 2026 23:17:04 +0000</pubDate>
      <link>https://rubyflow.com/p/brzac1-the-perfect-zsh-setup-oh-my-zsh-on-cachyosarch</link>
      <guid>https://rubyflow.com/p/brzac1-the-perfect-zsh-setup-oh-my-zsh-on-cachyosarch</guid>
    </item>
    <item>
      <title>Why "Good Enough" Design is the Solo Developer's Secret Weapon</title>
      <description> I spent years looking at websites like Stripe or Linear and feeling depressed. I would try to… </description>
      <pubDate>Tue, 19 May 2026 22:06:27 +0000</pubDate>
      <link>https://rubyflow.com/p/wf3c27-why-good-enough-design-is-the-solo-developers-secret-weapon</link>
      <guid>https://rubyflow.com/p/wf3c27-why-good-enough-design-is-the-solo-developers-secret-weapon</guid>
    </item>
  </channel>
</rss>
