How to build a complete, real-world application from scratch with Ruby on Rails step by step.
A lot of Ruby code is "magic". We'll explain the magic and see how it works using the powerful tools Ruby gives us.
Accept subscription and one-time payments with Stripe in your Rails apps
Expert advice on keeping Rails apps organized and fast.
Learn how to build fast, modern web apps with HTML over the wire.
Setup your computer with Ruby on Rails and deploy to a production server.
Cheap, easy hosting for Ruby and Rails apps.
Launch your product business way faster with our SaaS template.
A weekly podcast on web development and building products with Ruby, Rails, Javascript, and more.
A few of the Open Source projects we do at GoRails.
Build a Ruby on Rails app in 48 hours with us.
Help Junior developers get hired by sharing small projects to build their resume with paid work.
Find your next Ruby on Rails Job.
In this lesson, we will pick up where we left off in the last part and package up our script into a gem that we can share. Along the way, we'll look at how we can spread responsibility across a few small classes to separate concerns and hopefully make the
Ruby 3.3.0 was released today and this lesson we're diving into the goodies included in the new version.
Notifications in Rails applications are even easier now with the new release of Noticed gem v2. We'll explore how to add notifications to your Rails app in just a few minutes.
Have models that store the same data but need different functionality? Rails provides Single Table Inheritance in ActiveRecord to solve this problem.
Using some Ruby metaprogramming and class_eval, we can build Notifiers that allow us to dynamically define STI models and inject code into them with our notification system.
Mission Control Jobs is a UI for ActiveJob in Rails. It was announced at Rails World 2023 and just got released. It currently supports SolidQueue and Resque with more queue adapter support in the future.
In this lesson, we will learn how to communicate features that will be removed in the future by using a built in feature of Rails specifically ActiveSupport::Deprecation.
Adam McCrea walks through using Phlex to build components for views in your Rails applications. Phlex is a Ruby gem for building fast object-oriented HTML and SVG components using Ruby constructs: methods, keyword arguments and blocks.
Kicking off our Web Scraper series, we start out with the bread and butter: scraping web pages with Ruby and Nokogiri.
Building the controllers and actions for our Web Scrapper application lets us interact with Rails to add and remove Pages and view the results as they're generated.
We need to keep track of the web pages we want to monitor and scrape data from, so let's create our ActiveRecord model for storing this information and a Result model for storing the result each time we scrape a web page.
TailwindCSS is an excellent CSS framework for letting us quickly iterate on design ideas to make our UI much cleaner and easier to use.
When a web page is scraped successfully, we need a way to notify the user. For example, when the Raspberry Pi 5 is finally in stock, we want to know right away with an email.
Now that our application is deployed to production, we can use a service like Postmark to send real emails.
Wrapping up our Web Scraper, we debug an issue in production with SolidQueue and some challenges for you to add more features to the web scraper.
The next step is deploying our web scraper to production and setting up our cron jobs. We'll deploy our Rails app to a server using Hatchbox.io and configure cron jobs to run our scraping tasks on an interval.
Ever wondered how Rails controllers get their functionality? Let's see how we can add translation support to Rails API controllers by looking at the Rails source
In this lesson, we'll take a look at how a small change to fix some rigid code in the Receipts gem can open up more possibilities.
Rubygems.org released a new feature called Trusted Publishing which allows you to release gems directly from GitHub Actions without requiring 2FA or long-lived API tokens. Let's see how it works!
Did you know GitHub Actions supports inputs? You can accept inputs from the user or other actions to be used in your action.