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.
Captchas help prevent bots from spamming your Rails applications so today we're implementing Cloudflare's Turnstile captchas.
Mobile and desktop versions of widgets often need to be completely different. Navigation and tabs on mobile don't work well when there are lots of items so we'll show you how to use Turbo and a select tag for mobile navs.
In this episode, we will look at an approach to adding the ability to delete / remove the nested fields from our form.
Turbo Frames provide an iFrame like concept for Hotwire applications. If you're using Turbo streams to replace a portion of the page, you can accomplish the same thing even easier using Turbo Frames
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
Learn how to build custom Turbo Stream Actions to build things like browser notifications, console logging, or anything you want. Plus, we'll look at how Turbo implements this in their GitHub codebase.
Learn how to auto-submit forms when a user changes a value and use custom Turbo Stream Actions to update the page
Turbo confirm modals typically ask a simple yes or no confirmation. What if you want to force the user to type in confirmation text to ensure they are paying attention? That's exactly what we'll build in this episode!
In this episode, we will look at how to refactor an existing dynamic nested attributes form that uses Stimulus to instead leverage the ability to now make GET requests with Turbo.
Overriding the Confirm method in Turbolinks and Hotwire has been pretty tricky until now. Using promises, Turbo can now wait until the user has submitted the confirm modal.
Hotwire allows us to add inline editing easily in Rails forms using Turbo Frames. Learn how to implement them in a reusable manner so you can inline edit any fields across any model.
Learn how to use Stimulus Target Callbacks to trigger realtime Chart updates
Turbo now provides equivalents to Rails UJS data confirm, disable with, and method attributes that we can use.
Refactoring a Javascript countdown timer into a reusable Stimulus controller gives a look at the flexibility we can achieve by taking advantage of the Stimulus Values API and customizing the default values.
Ever wanted to build Datatables into your Rails app? You can using Hotwire using Turbo Frames without any custom Javascript.
Need to dynamically update fields when a user changes a select box? We can do that easily in Rails using Hotwire's Turbo Stream actions.
Web Components are a great way to encapsulate Javascript logic around an element in your HTML. We'll explore how to create Custom Elements and see how Hotwire uses them for Turbo Stream actions.
In part 1, we're going to setup our Rails application, our models, and connect Hotwire so we can dig into building ActionMailbox next.
Hotwire & Turbo.js are designed to make realtime updates to your page. So how do you notify the user with flash messages or toasts? That's what we're covering in this episode.
Custom targets allow us to render nested comments, update forms, and append new comments with Turbo stream events using Hotwire
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.