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.
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.
Setting up a Git repository and Flash messages
Validations
The core of any API wrapper is the actions for create, read, update, and delete. We'll implement the CRUD for a resource so you can see how to do it and wire up everything together that we've built so far.
CSS Variables or CSS custom properties allow you to define variables that can be used throughout your CSS to change properties and their values dynamically. It's a wonderful feature for allowing users to customize the look of your website.
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.
In this episode, we will create our first Ruby Gem. It will be a very simplified gem that adds a method to the built-in Ruby Array class. The goal is to understand the core pieces of what is needed to create a gem that we can share with the community.
How do we go about writing robust tests with rspec for simple_calendar?
Use Carrierwave to add attachments to your Mailboxer conversation messages
Now that the Paperclip gem has been deprecated, it's recommended that you migrate your apps to ActiveStorage
Reply to inbound SMS and phone calls using TwiML to create XML responses to Twilio conversations
Rails provides several really useful test helpers for ActionMailer so we can quickly iterate on our design, test that our code queues up the right emails, and make sure our emails contain the right content.
Learn how to test ActiveStorage file uploads and create fixtures with ActiveStorage attachments
Installing Bootstrap is easier than ever thanks to CSS Bundling in Rails now. It also wires up the Javascript so you don't have to do much of anything.
Using Signed GlobalIDs, we can create polymorphic select boxes in Rails to easily choose a record of any type. This is also secured by using signed global IDs to prevent tampering by malicious users.
Rails uses the Ruby subscript operator to implement versioning with ActiveRecord Migrations. We'll learn how this works and implement it from scratch to see how it all ties together
Complex queries can slow your page rendering down. We can now run long queries in parallel with Rails 7's load_async method in ActiveRecord to speed up page rendering.
A quick look at the new features of Rails 4.2 in the first beta that was recently released
We do a code review of a script that let's you control your Mac and iTunes with commands that generate AppleScripts
Creating draft records in your database can be tricky. We'll be using the Draftsman gem to help us create draft versions of our records with our autosave Javascript
An updated version of our Group Chat series using Webpacker, ActionCable, Stimulus.js, and modern Javascript to build a very clean version of realtime group chat in Rails
Join 82,584+ developers who get early access to new tutorials, screencasts, articles, and more.
We care about the protection of your data. Read our Privacy Policy.