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.
Rails 7. Start Kit Loves Nginx (Release v2.1)
Rails 7. Start Kit is a dockerized Rails app with many preinstalled tools that could be launched on any platform in minutes. This weekend I’ve added Nginx to the kit. Since Release v2.1 you can play with Nginx out of the box. Happy coding!
rubidity gem - ruby for layer (l1) contracts / protocols language machinery
Hello, as a follow up to rubidity-typed gem - “zero-dependency” type machinery for rubidity i have published the first rubidity gem itself (building on the rubidity-typed gem) that let’s you run rubidity contracts “off-chain” with plain old ruby interpreters. It’s still (very) early. I invite you to join the fun and let’s explore and learn together building a type (and contract / protocol blockchain) machinery in ruby.
Refactoring from feature specs to system specs
Lately I’ve been diving into the differences between RSpec feature specs and system specs.
re2 2.0.0: vendored RE2 & native gems
Following last week’s beta, version 2.0.0 of re2 (Ruby bindings to Google’s RE2 “fast, safe, thread-friendly” regular expression library) is now available from RubyGems. Unlike version 1, it no longer requires the underlying RE2 library to be installed separately as it is now vendored with the gem and precompiled, native gems are available for Linux, Windows and macOS. [more inside]
Talking to Hostile APIs
APIs allow us to communicate with third party software in order to use their services and data. In today’s software it’s almost impossible not needing to use one, one way or another. What if they are hostile? [more inside]
Exploring Ruby Warnings
We are used to checking the deprecation warnings displayed by Rails or warnings from different gems, but Ruby itself can also display warnings to help us find code that can be problematic. [more inside]
New Blog (for flipper/ruby/rails)
We’ve already posted on client side feature flags, how we added a free plan, and an awesome relay race to ship a new feature. I forgot to post here but will for future posts.
Using GPT-4 to implement UI changes
I wrote an article with 5 examples about how I used Cursor GPT-4 to ask for some UI changes and in general the response was good enough to be used.
Six Ways to Prevent Monkey-Patch Drift in Ruby
I recently wrote about the challenges of monkey-patching in Ruby. Specifically, how to ensure that patches don’t drift from the original code. In the article, I outline six strategies based on my experiences. [more inside]
Sqlite & Rails in Production
I contributed to a few gems to make the development experience of deploying Sqlite Rails apps to production as simple as possible and wrote about it at https://fly.io/ruby-dispatch/sqlite-and-rails-in-production/
Ruby goes to the movie theater: directing the refactoring of your application
This post introduces a method I use to refactor big applications. I want the process to happen in a predictable manner and make sure that important things are addressed before others. One day I realized that there is a missing tool in my workflow, so I’ll introduce my new gem called rubocop_director.
When Should You Use Background Jobs? | Rubber Duck Dev Show 99
In this episode, we discuss when you should use background jobs: https://www.rubberduckdevshow.com/episodes/99-when-should-you-use-background-jobs/
Rauversion 🤘 The self-hosted music industries built on Rails 🤘
We’re excited to share this release with you all: a fresh take on music streaming platforms, reminiscent of SoundCloud and Bandcamp, but with some unique features that cater to artists, music enthusiasts, and event hosts alike. Built using the power and flexibility of Rails and Hotwire, we’re proud of what we’ve achieved and would love to hear your feedback! [more inside]
rubidity-typed gem - "zero-dependency" type machinery for rubidity
Hello, as a follow up to Rubidity - Ruby for Layer 1 (L1) Contracts with “Off-Chain” Indexer I have published the first “zero-dependency” rubidity gem. Let’s welcome the rubidity-typed gem bundling-up the “zero-dependency” type machinery incl. (frozen) string, address, uint256, contract and more for rubidity for easy (re)use and experiments. It’s still (very) early. I invite you to join the fun and let’s explore and learn together building a type machinery in ruby.
Rails 7. Start Kit — Windows, Linux, MacOS!
Rails 7. Start Kit - staring a new RoR app never been so easy! Run the only shell command and get a launched RoR app in 10 minutes! This is game changing project for development, learning and teaching processes in Rails ecosystem. Try it out right now! Happy coding! V2.0 Release Note
Celebrating 10 issues of the RailsNotes newsletter 🥳
I’ve published the 10th issue of my Ruby on Rails newsletter. Check it out!
Using Alpine.js with Rails 7 importmap
Alpine is an alternative to Stimulus for “JavaScript sprinkles” in your Rails apps. Pair with me for 20 minutes while we build an Alpine component from scratch, installing Alpine with importmap and iteratively bringing our UI to life.