Logo Logo white GoRails
Path Series Lessons Forum
Courses
Rails for Beginners

How to build a complete, real-world application from scratch with Ruby on Rails step by step.

Advanced Ruby: Behind the Magic

A lot of Ruby code is "magic". We'll explain the magic and see how it works using the powerful tools Ruby gives us.

Payments with Rails Master Class

Accept subscription and one-time payments with Stripe in your Rails apps

Refactoring Rails

Expert advice on keeping Rails apps organized and fast.

Learn Hotwire

Learn how to build fast, modern web apps with HTML over the wire.

Content
Install and Deploy Rails Guides

Setup your computer with Ruby on Rails and deploy to a production server.

Apps
Hatchbox.io

Cheap, easy hosting for Ruby and Rails apps.

Jumpstart Rails SaaS Template

Launch your product business way faster with our SaaS template.

Other
Remote Ruby Podcast

A weekly podcast on web development and building products with Ruby, Rails, Javascript, and more.

GoRails Open Source

A few of the Open Source projects we do at GoRails.

Rails Hackathon

Build a Ruby on Rails app in 48 hours with us.

Beginner Bounties

Help Junior developers get hired by sharing small projects to build their resume with paid work.

Ruby on Rails Job Board

Find your next Ruby on Rails Job.

Pricing
Log In Sign Up
17m

Creating The Link Model

Sep 19, 2023 Pro

First things first, we need a Link model to store our

0
11m

Views Chart for Links

Sep 24, 2023 Pro

Analytics for links is a useful feature so lets record Views for links and show them in a graph

3
13m

Copy Link To Clipboard

Sep 27, 2023 Pro

Copy to clipboard is a required feature for a URL shortener. We'll implement this with two JavaScript libraries (clipboardjs and tippy.js) and a Stimulus controller.

0
11m

Deploying URL Shortener To Production with Hatchbox.io

Sep 28, 2023 Pro

We're ready to deploy our URL Shortener to production and we're going to do that using Hatchbox.io

1
2m

Challenge: Add Users To The URL Shortener

Sep 29, 2023 Pro

Anyone can add, edit, and delete any Link in our URL Shortener database. Your challenge is to add users, associate links with them and only allow editing of your own links.

0
18m

Adding Edit Permissions For Links

Sep 30, 2023 Pro

Here's how we'd add Users and handle edit permissions for links. See how it compares to your implementation and consider the pros/cons of each approach.

3
15m

Link Pagination with Pagy

Oct 03, 2023 Pro

Once our application has lots of links, it will become impossible to use. Let's add pagination to make our application usable once we have hundreds or thousands of links.

2
23m

Message Form Handling with Stimulus

Mar 03, 2025 Pro

We take care of submitting a message without having to click the form button, and fix an issue we create in doing so around replacing the form. We end with planning our next steps.

9
21m

Stimulus Autoscroll and Broadcasting Messages

Mar 10, 2025 Pro

We handle scrolling the most recent message into view upon page load along with any new messages that come through while on the page. We also broadcast new messages so everyone stays up to date.

6
17m

A Simpler Build with Broadcasts Refreshes

Mar 26, 2025 Pro

In this episode, we refactor our code to use broadcasts_refreshes to get an extremely simplified version of a chat application.

2
12m

Advanced URL Parsing in Rails with PublicSuffix & Addressable gems

May 15, 2023 Pro

URI in Ruby is powerful, but not complete. We can use the PublicSuffix and Addressable gems to take this a step further for parsing domains and subdomains.

0
39m

Contributing to Open Source: Adding subdomains to the Addressable gem

May 22, 2023 Pro

The addressable gem adds some nice features over Ruby's built-in URI class, but it doesn't have any helpers for extracting subdomains. In this lesson, we'll add some methods to Addressable to make accessing subdomains easier.

0
31m

How to debug OAuth login in Rails with OmniAuth

Jun 05, 2023 Pro

OAuth can be hard to understand and debug. Plus, this process is abstracted even further with OmniAuth in Rails. In this episode, we'll walk through t

0
17m

Law of Demeter and Delegation

Aug 07, 2023 Pro

In this episode, we will dip our toes into an Object Oriented Design Principle known as the Law of Demeter. We will then look at an example of a small violation of this principle followed by a couple of solutions to remedy the issue.

5
17m

Authenticate By & Password Challenge Methods In Rails 7.1

Sep 20, 2023 Pro

Has secure password is boasting some new benefits in Rails 7.1 with the addition of the authenticate_by method which reduces timing-based enumeration attack vulnerabilities. Also being introduced is the ability to provide a required password challenge.

2
14m

Unused Rails Routes Command

Sep 25, 2023 Pro

In this lesson, we will look at a new option coming to the rails routes command in Rails 7.1 which will display a list of any routes deemed as unused in your Rails application. Let's see what qualifies a route as unused and learn some other handy tips!

0
13m

The Behaviors Of Super

Oct 13, 2023 Pro

In this lesson, we will look at the various ways we can use the super keyword in Ruby in regard to forwarding method arguments to the equivalent method in a parent class.

2
9m

Strict Loading with ActiveRecord

Oct 16, 2023 Pro

Not eager loading in your Rails applications can have series performance side effects. Rails now comes with a strict_loading feature that you can use to make sure that queries are run in an efficient manner.

1
14m

Organizing Rails Model Files

Oct 30, 2023 Pro

In this lesson, we will look at some guidelines which we can use to help keep our Rails model files organized and uniform. Along the way we will uncover a couple of gotchas to be aware of when doing the work to align your files with the template.

8
17m

Dynamic Configs in Devise with Ruby Lambdas

Nov 27, 2023 Pro

Config options sometimes need to support dynamic values and not just simple booleans. In this lesson, we'll discover a config in Devise, explore how we can hack around it, and then make a Pull Request to improve this feature in Devise instead.

3
<1…151617…21>
Filter By
All Episodes Free Episodes Pro Episodes
Sort By
Published Date Popularity
Categories
ActionCable ActionMailbox ActionText ActiveJob ActiveModel ActiveRecord ActiveStorage ActiveSupport Administration APIs Authentication Authorization Background Jobs Basics Caching Code Organization Code Review Comments Complete App Concerns Controllers Credentials CSS CSV Debugging Deployment Design Patterns Development Docker Emails Ember Errors File Uploading Fixtures Forms Frontend Gems Generators Geocoding Helpers Hotwire Internationalization iOS Javascript JavaScript Maps Messaging Metaprogramming Middleware Mobile Models Multitenancy Notifications OAuth Open Source Pagination Payments Performance Production Rack Rails 4.2 Rails 5.0 Rails 5.1 Rails 5.2 Rails 6 Rails 7 Rails 7.1 Rails 7.2 Rails 8 Rails Engines React Native Refactoring Routes Ruby Search Security Servers Sharing SQL Testing Timezones Turbo Turbolinks Upgrading Views VueJS Webhooks Webpacker

Learn Ruby on Rails, Javascript, Hotwire, Turbo, Stimulus.js, PostgreSQL, MySQL, Ubuntu, and more with GoRails tutorials.

Twitter GitHub

Solutions

  • Ruby on Rails Tutorials
  • Rails Learning Path
  • Rails Courses
  • Rails SaaS Template
  • Deploy Ruby on Rails
  • GoRails Open Source
  • Ruby on Rails Tools
  • Ruby on Rails Jobs

Support

  • Pricing
  • Teams
  • Testimonials
  • Help

Company

  • About Us
  • Blog
  • Remote Ruby Podcast

Legal

  • Privacy Policy
  • Terms of Service

© 2026 GoRails, LLC. All rights reserved.

Proudly built with Jumpstart and hosted with Hatchbox and DigitalOcean.