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.
rubocop-director
Gem to help you prepare a list of refactorings based on Rubocop TODO and git history
Newsletter is just a start with Lucian Ghinda | content_for :devs #008
If you are following up with the Ruby community, you most likely already know Lucian Ghinda. We had been honored with a nice conversation with him recently, and now you can check the episode also on Youtube.
rubygems.org marked unsafe
Anyone know what’s going on? No status from anyone running rubygems.org online yet. https://transparencyreport.google.com/safe-browsing/search?url=rubygems.org&hl=en-US
4 Essential Security Tools To Level Up Your Rails Security
Maintaining a Rails application up to date and secure takes some effort. Rails has a ton of security support, but there are other tools you can use to protect your codebase and production database. [more inside]
The AAA Pattern: Writing Robust Tests for Any Project With Confidence
Are you looking for a reliable way to test your applications? Look no further than the AAA pattern. [more inside]
Organize Business Logic in Your Ruby on Rails Application
In the first part of this two-part series, we’ll run through popular methods to organize your business logic: https://blog.appsignal.com/2023/05/10/organize-business-logic-in-your-ruby-on-rails-application.html
Deploying a Ruby on Rails App on Render with a Database, Redis, Sidekiq, and Cron Job
I recently wrote a blog post about deploying a slightly more complex-than-usual rails app to Render (a hosting alternative similar to Heroku). It resonated well with the Rails community on Reddit, so I thought I’d post it here too. Deploying a Ruby on Rails App on Render with a Database, Redis, Sidekiq, and Cron Job | MONN.APP Blog
Let's make a blog with Bridgetown! | Hanami Mastery #044
Bridgetown is the best static site generator for Ruby, and here is why. [more inside]
Ask_ChagGPT + VOICE input
Another milestone of ask_chatgpt, started with the idea “if it possible to record voice with Ruby”. Now, using some code and ffmpeg it’s possible, and you can talk to ChatGPT using your voice directly from the Rails console. [more inside]
Automatically open the browser when the Rails server starts
How to register a simple puma plugin to automatically open a browser tab for your Rails app when you start bin/rails server or bin/dev. https://mattbrictson.com/blog/open-browser-on-rails-start
How to use a specific version of Rails
The latest issue of Rails Tricks covering how to use a specific version of Rails is out! https://greg.molnar.io/blog/rails-tricks-issue-6/
Open Source Heroes - A Poem of Appreciation
Working with open source for a long time is tremendous work, often unappreciated. Join me with a moment of sharing a word of appreciation to one of OSS hero you know! [more inside]
Rails 7. Start Kit. Release 1.9
Rails 7. Start Kit is Rails App in a Docker container with some popular preinstalled tools. Release 1.9 is here. In this release I managed and described in the docs all processes related to Front-end tools. ESBuild / ImportMaps / Sprockets - all these tools and how to use them together in a project – read the release notes . Happy coding!
Using Boxcars (Ruby Langchain alternative) to query a Rails DB with natural language
You may have heard of Langchain, the Python library for creating LLM-powered apps with nearly 35k GitHub stars. Despite the large following, Langchain can be difficult to use when you want to go deeper than “hello world” tutorials. This experience led me to Boxcars, a Langchain-inspired Ruby gem but with fewer abstractions. [more inside]
Solidus v4.0 released: removing deprecations and improving Stripe integration
The Solidus Core Team is excited to announce the release of Solidus v4.0! This major release removes deprecated code and features a revamped solidus_stripe gem, making it even easier to integrate with Stripe as your payment gateway. Solidus is a powerful and flexible open-source e-commerce platform built with Ruby on Rails. With v4.0, we’re continuing our commitment to providing developers with a top-notch platform for building online stores. If you’re upgrading from v3.4, please check out the upgrade instructions at https://guides.solidus.io/upgrading-solidus/v4.0 We appreciate your continued support of Solidus, and we can’t wait to see what you’ll build with this new release! To learn more about Solidus, join our community on Slack. Happy coding!
Session Hijacking
In this episode, we explore session hijacking and an approach that we can take to limit the risk. There are some user experience and functionality caveats to this approach so they must be taken into consideration as well. https://www.driftingruby.com/episodes/session-hijacking
A few words on Ruby's type annotations state
A few words I wanted to say on Ruby’s type annotations state that were written in a military training camp and accidentally grew to 5k words.
Montreal.rb May 2023: Integrating REST APIs w/ Microsoft Kiota
The video for the Montreal.rb (Ruby/Rails Meetup) May 2023 talk “Integrating REST APIs with Microsoft Kiota” has been posted! Microsoft Kiota is an open-source technology that can automatically generate SDKs for HTTP REST APIs in Ruby (or any programming language) to save software engineers from having to write error prone API client code that handles authentication, authorization, serialization, and exception handling manually. [more inside]
Rails 7.1 got rid of the apostrophe for the right single quotation mark!
Rails 7.1 got rid of the apostrophe (U+0027) for the right single quotation mark (U+2019), which will likely break your tests. It added a new intersects?
method to ActiveRecord::Relation
.
The Dangerous Query Method Deprecation (And How to Fix it)
Have you ever tried to update a Rails app from 5.2 to 6.0, or from 6.0 to 6.1? If so, you might have seen this deprecation: [more inside]