Save 36% for Black Friday! Save 36% on GoRails for Black Friday! Learn more →
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.
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.
Next, we can build redirecting Short URLs to the URL on the Link
Now that we have Base62 encoding and decoding, we can tell Rails to use this for generating URL params and find
Rails 7.1's new generates_token_for method allows us to build password reset and Magic Link login tokens without storing details in the database. Tokens have expirations and can be one-time use so they can't be reused.
Decoding our Base62 encoded short codes is the next challenge
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.
Using Base62, we can take an Integer ID and compress it for short codes in our URLs
First things first, we need a Link model to store our
We're going to build a URL Shortener in Rails, so where do we start? In this lesson, we'll plan out our project and the features we want to build.
Rails' ActiveRecord supports virtual generated columns in the database. For example, you can use these for converting numbers like degrees Celsius to Fahrenheit. These columns are saved with the regular table data and allows you to query against them.
In this lesson, we will be learning how to use strace to watch our system calls which we can then use to help debug issues further.
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.
Ever wondered how ViewComponent or Phlex works with Rails to build components? Rails has a method called render_in that any object can implement to build custom render functionality like components.
In this episode, we will look at an approach to adding the ability to delete / remove the nested fields from our form.
Did you know Rails provides concerns for routes in addition to concerns for models and controllers?
Modules and concerns provide a way to make functionality reusable across your Rails application and other apps. In this lesson, we'll show you how we can refactor our comments functionality to add a feature to any resources in Rails.
Our most popular episode is the Liking Posts episode, so we're revising it and taking advantage of Hotwire to implement the same feature with no custom Javascript
In this video we explore some potentially unexpected behavior resulting from using Active Record scopes.
We're ready to deploy our Password Manager to a hosting provider. We've chosen Fly.io this time to change things up and see how another hosting service works.
We're ready to spruce up our Password Manager design with a little TailwindCSS.
Now that we have password sharing, it's important to add roles & permissions so users have limited access to actions on shared passwords.
Join 86,946+ developers who get early access to new tutorials, screencasts, articles, and more.
We care about the protection of your data. Read our Privacy Policy.