-
Full Stack Rails Mastery
-
BONUS content (Full Stack Career Bundle)
-
Building a simple 2-sided marketplace app
- Introduction to building a simple 2-sided marketplace app
- How to set up a Rails app with Devise gem for user authentication
- Setting up data models for the marketplace
- Setting up the homepage and product pages
- Challenge 1: Fix the product editing bug
- Solution to Challenge 1: Fix the product editing bug
-
Accepting payments through Stripe
- How to set up Stripe in a Rails app
- Adding session info and links
- Add a buy button and checkout form
- How to handle Stripe webhooks to fulfill orders
-
Deploying Rails apps
-
Styling with CSS
- How to use CSS in Rails - An Overview
- How to add Tailwind CSS and a theme with the tailwindcss-rails gem
-
CMS features - images and rich text
- How to add image attachments in Rails using Active Storage
- How to add a rich text editor in Rails with Action Text
- How to remove a column using a Rails migration
-
Hotwire - adding interactivity and speed
- How to build an image gallery in Rails with Stimulus
- How Turbo Drive speeds up navigation in Rails
- How to use Turbo Frames
- How to use Turbo Streams to display Rails flash messages
- Adding Product Reviews with Turbo Stream Actions and Templates
- How to broadcast real-time updates with Turbo Streams and Turbo Morph
-
Enhancing product and user data
- Challenge: Replace hardcoded Stripe price id with product-specific ids
- Solution: Use Active Record callbacks to set unique Stripe price id for products
- Add name and profile photo to Users
- Seeding the development database using the Faker gem
-
Shopping cart
- Shopping Cart Data Models
- How to add a product to a shopping cart
- Adding a shopping cart page and navbar link
- How to use Turbo Streams to display a shopping cart item count
- How to remove a product from the shopping cart
- How to create a Stripe Checkout session for a shopping cart with multiple products
- How to process a Stripe webhook for a shopping cart order
- How to handle cart modifications after initiating checkout
- Fixing a nil bug in the shopping cart item count code
-
Action Mailer
-
Background jobs in Rails
- How to use Rails Active Job with Solid Queue for background jobs
- How to use Rails Active Job with Sidekiq for background jobs
-
Software as a Service (SaaS) features
- How to setup monthly subscriptions in Rails with Stripe
- How to process Stripe subscription webhooks in Rails
- How to handle Stripe subscription cancellations in Rails
-
Testing Rails Apps
- Introduction to Minitest for testing Rails apps
- Unit tests for the Product model
- Unit tests for the User model
- Unit tests for the Cart model
- How to use Capybara with Selenium for Rails system tests
- System tests for shopping cart checkout
- System tests for creating and editing products
- Controller tests for Stripe Webhooks
-
Upgrading Rails Apps
-
Rails Performance Optimization tips
-
Designing a Rails API (BONUS MODULE)
- 3 Ways to build a Rails API
- Designing REST API Endpoints in Rails
- RAILS API Authentication
- Rails API Documentation with Swagger
- Using the Grape gem for Rails APIs
-
React and Rails (BONUS MODULE)
-
Common Rails errors and troubleshooting guide
- NoMethodError in Devise::RegistrationsController#create
- cannot load such file -- sassc
- Rails LoadError Generating image variants require the image_processing gem
-
References, tools and miscellaneous topics
- Ruby and Rails quizzes
- How to setup Rails Guides for offline use
- How I used Rails to build an AI app that roasts Instagram
- Rails 7.2 allow_browser version guard feature
- How to allow ID attributes in Action Text
-
Rails Cheatsheets
How to use Rails Active Job with Solid Queue for background jobs
Updated:
In this video lesson, we'll see how to use Solid Queue with Active Job to send order confirmation emails in an ecommerce app. Solid Queue is the new default way of running background jobs in Rails 8 apps.