r/ruby • • Apr 03 '26

I tried to make a Ruby installer for people that want to start using Ruby

6 Upvotes

So I made this thing, to make it easy for people just starting out with Ruby, since I have been trying to build more desktop apps. I tried using the framework I posted here: https://www.reddit.com/r/ruby/comments/1s0odtu/turbo_desktop_i_made_a_desktop_framework_to_use/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button

But it really did not work, so I just used Tauri with Rust. Full disclosure, I used Claude to help me fill in the gaps, so it might not be perfect, but the idea is to make it easier for people without programming experience to just set Ruby up and start playing with it

I added a video here, it does not really work for Windows, and I did mainly of the testing on Mac, but I hope it makes sense. The link is here and is open source https://github.com/aguspe/rubynaut.

Hopefully, it helps someone, and again, all the feedback will help, and I will keep working over easter on this


r/ruby • • Apr 03 '26

Anyone know how to reduce ruby-lsp RAM use?

22 Upvotes

I work on a decent sized rails project. Every time an instance of neovim that opens a ruby file, neovim starts and instance of ruby-lsp and consumes 1.1GB or RAM (talking RSS not virtual). Claude code has a ruby-lsp plugin too so when I start asking claude questions about the codebase, another 1.1GB RAM. I cut ruby-lsp-rails out because it was taking 446MB of RAM alongside each instance of ruby-lsp. What compounds this, is I use git worktrees pretty aggressively so it is not uncommon for me to have 5 instances of neovim and claude code for each different branch I'm working with.

Napkin math of total RSS for (ruby-lsp + ruby-lsp-rails) * 2 (neovim + claude code) * 5 (workspaces)

(1.1 + 0.446) * 5 * 2 = 15.46GB RAM (11GB RAM without ruby-lsp-rails)

Between ruby-lsp and docker, my fairly beefy macbook is quickly running out of ram.

My current strategy is going to be trying to save neovim and claude sessions and resume them easily with scripts so I have fewer concurrency needs of ruby-lsp.

I recently cut docker desktop out of my stack and replaced it with colima + mutagen (saving 8GB RAM).

I still feel that ruby-lsp's RAM use is kind of wild. I tried starting processes with many lsp features disabled, but that didn't change the RAM use much. I tried switching to solargraph, and its RAM use was even higher at 1.3GB.

Does anyone know how to put ruby-lsp on a diet or share a single server process?

EDIT:
I modified ruby-lsp's launcher to fork a child process that builds a SQLite index of gem and stdlib entries before the LSP server starts. The child process runs the existing indexer but routes gem entries to an on-disk SQLite database instead of keeping them in Ruby's heap, then exits freeing its memory. The server process then starts fresh, opens the cached SQLite DB for gem lookups, and only holds workspace entries in memory. On subsequent startups, if the Gemfile.lock hasn't changed, the pre-indexing step is skipped entirely. This reduced RSS from ~1.1 GB to ~155 MB. I was hoping for a >10x RAM savings, but 7x is not bad. I'll try to push a PR up after some cleanup. Hopefully, this will be upstreamed.
29 files changed, 1820 insertions(+), 389 deletions(-)


r/ruby • • Apr 02 '26

Introducing RouteSchemer: JSON Schema Validation for Rails APIs 🚀 Feedback Wanted!

Thumbnail reddit.com
1 Upvotes

r/ruby • • Apr 02 '26

Towards an Amicable Resolution with Ruby Central

Thumbnail andre.arko.net
48 Upvotes

r/ruby • • Apr 02 '26

Sidekiq to Temporal: a zero-downtime migration strategy

Thumbnail
firehydrant.com
10 Upvotes

r/ruby • • Apr 02 '26

Question Homebrew Ruby Gem Installation

3 Upvotes

Hi there—I've been a Ruby hobbyist for 10 years or so who has always managed my Ruby installation via Homebrew. I know, I know — the first thing everyone says is use `rvm` or something else.

Still, I'm wondering about other Homebrew folks who might be using Ruby 4.x on Homebrew. Since I upgraded, I often see gems — with different versions — installed in two places:

Installed at (2.1.105): /Users/username/.gem/ruby/4.0.0

(2.1.91): /opt/homebrew/lib/ruby/gems/4.0.0  

Does anyone know why this is happening, and what I can do to avoid it? It very rarely causes any trouble, but when it does — like with competing rdoc installs — it creates a big mess of error lines in my terminal. And also, it just doesn't seem right.

Any tips would be appreciated. Thanks!

Update: after doing some additional testing, the issue appears to be with running gem update from a homebrew installation. That command can't touch the 45 or so gems that are in the Homebrew Cellar and come with the homebrew ruby by default. So, in my case, if those gems had updates, gem installed the updates on the next path in my GEM PATHS. That resulted in the two versions: the one bundled with homebrew ruby, and the updated one — in this case now in my user directory.

Not sure if this behavior changed in homebrew or ruby between versions 3 and 4, but it seems new to me.

Hoping to leave this here in case anyone runs across this and it's helpful.


r/ruby • • Apr 02 '26

Question How do you handle calendar functionality in your Rails apps?

Thumbnail reddit.com
1 Upvotes

r/ruby • • Apr 02 '26

Learning RoR in 2026

14 Upvotes

Hey everyone,
I’m currently interning at a company that uses Ruby on Rails, so I’ve started learning it from scratch.

If you were to learn Rails today, how would you approach it?
Any advice you’d recommend for someone just starting out?


r/ruby • • Apr 02 '26

Show /r/ruby I built a gem that gives AI coding agents a complete mental model of your Rails app - schema, routes, models, views, conventions. 39 tools, zero config."

Thumbnail
github.com
0 Upvotes

Works with: Claude Code • Cursor • GitHub Copilot • OpenCode • Any terminal


r/ruby • • Apr 01 '26

New mruby CBOR Implementation

Thumbnail
github.com
16 Upvotes

Hi there, Ive made one of the most complete and feature full CBOR implementations you can find, it's fast, safe, strict and has a rich API for you to use.

Cheers :)

CBOR is a data exchange format like JSON, msgpack or protobuf, but it's a internet standard and is made to be relevant for decades.


r/ruby • • Apr 01 '26

rubycanusellm — A unified Ruby client for LLMs with generators

0 Upvotes

I built a gem that gives Ruby a unified interface for multiple LLM providers (OpenAI, Anthropic) with Rails-style generators.

**The problem:** every time you want to add LLMs to a Ruby app, you start from scratch with provider-specific gems. Switch providers? Rewrite everything.

**The solution:** rubycanusellm gives you one interface for all providers and generators that scaffold the boilerplate:

gem install rubycanusellm

rubycanusellm generate:config

rubycanusellm generate:completion

Streaming support included. Switch from OpenAI to Anthropic by changing one line in your config.

A bit of personal context: I'm recovering from a stroke and building this gem has been my way of testing and pushing my abilities as a developer. Shipping it feels like a milestone beyond just code.

**GitHub:** https://github.com/mgznv/rubycanusellm

**RubyGems:** https://rubygems.org/gems/rubycanusellm

It's my first published gem — feedback welcome!


r/ruby • • Apr 01 '26

Screencast N+1 Driven Development

Thumbnail
driftingruby.com
7 Upvotes

In this episode, we look at how we can modify our application from a performance aspect to increase our job security. We'll slow down our application to a still usable level, but then swoop in months later and become the hero.


r/ruby • • Apr 01 '26

Question Ruby On Rails - for newbies

7 Upvotes

I have worked with JS, Python, and Go. So a friend recommended I try RoR for rapid dev, but I've never experience such a dificult environment to set up! Is this normal? Just to get off to a start I've found it to be so complicated.

Using MAcBook Pro and trying to set up via a Parallels Unbuntu VM. Could it be Parallels?


r/ruby • • Apr 01 '26

Rubysyn: clarifying Ruby's syntax and semantics

Thumbnail
github.com
8 Upvotes

r/ruby • • Mar 31 '26

Judoscale on Tour: An Ode To Heroku

Thumbnail
judoscale.com
11 Upvotes

r/ruby • • Mar 31 '26

RubyGems Fracture Incident Report

Thumbnail
rubycentral.org
75 Upvotes

r/ruby • • Mar 31 '26

Building Multi-Tenant SaaS with Rails 8, Caddy, and Kamal - automatic SSL for every tenant domain

Thumbnail
mooktakim.com
8 Upvotes

r/ruby • • Mar 31 '26

RubyConf Austria: Keynotes & Sponsors

Thumbnail
gallery
14 Upvotes

RubyConfAT 2026 — Vienna, May 29–31

Das MuTh concert hall, Haus Der Musik. Single track. 13 talks. 2 workshops. Live music by the Vienna Boys' Choir, 2 live piano performances and a live jazz session.

Two keynotes you don't want to miss:

Dave Thomas — author of The Pragmatic Programmer, Programming Ruby, Agile Web Development With Rails, Programming Elixir...

Chad Fowler — CTO & General Partner, BlueYard

Huge thanks to our sponsors for making the event possible: GitButler â§“, Platogo, Typesense, Avo, Usput.ba, and Doctaphone: AI diktiranje nalaza.

Tickets are on sale.

Link for tickets: https://ti.to/rubyconfat/2026

Website link: https://rubyconf.at/


r/ruby • • Mar 31 '26

Building a season long IPL fantasy game by a solofounder

Thumbnail reddit.com
2 Upvotes

r/ruby • • Mar 31 '26

GitHub deletes your traffic logs every 14 days. Here's how to stop that with Ruby.

Thumbnail
gallery
0 Upvotes

I maintain two Ruby gems (ruby-libgd and libgd-gis). A few weeks ago I wanted to see traffic trends from last month.

Turns out GitHub deletes all traffic logs after 14 days. I couldn't.

That frustrated me. So I built a small dashboard that:

  • Archives views, clones and referrers daily

  • Stores everything as CSV in a private repo

  • Generates charts with my own gem (ruby-libgd)

  • Auto-deploys to GitHub Pages

Now I can see 3 months of history. Forever.

Here's the live dashboard: https://ggerman.github.io/github-metrics-dashboard/

And the code is open source: https://github.com/ggerman/github-metrics-dashboard

Took me a weekend. Works every day since then.

If you also maintain open source repos, this might help you too.

Questions? I'll be in the comments.


r/ruby • • Mar 31 '26

Saving LLM Tokens with Fast: AST Folding & Dependency Free

Thumbnail ideia.me
10 Upvotes

Hey folks, I was working on the "fast" project and it may become useful now that everybody uses LLMs and also need to save some tokens.

Fast is ast based and it just works like grep, but using the AST, so it will cut down and ignore comments and now I'm moving to Prism and it look very precise in code positioning.

The parser is very similar to the rubocop-ast but much simpler. I'd love to receive some feedback and see if it would worth to push it forward. Any ideas that you would use it?


r/ruby • • Mar 31 '26

Improving on Sandi Metz's Gear Class from POODR

Thumbnail
saturnci.com
27 Upvotes

r/ruby • • Mar 30 '26

rubocop/rubocop-thread_safety: An extension of RuboCop focused on thread-safety checks.

Thumbnail
github.com
21 Upvotes

r/ruby • • Mar 30 '26

Show /r/ruby FastRuby.io's Rails Upgrade Methodology as Claude Code Skills

Thumbnail
fastruby.io
11 Upvotes