Do you wish you could build Rails 7 apps without feeling like you don't quite know what you're doing?
You can build toy apps and manage to contribute in a team as long as there are others making decisions. But when it comes to building on your own, you're never sure if you're doing things the right way.
You don't know best practices. You feel like an imposter and it's only a matter of time before you get found out and everyone realises you're faking it.
I know what that feels like.
Trust me, I've been there.
Don't you wish there was a way to plug all the holes in your knowlege?
To feel confident in your ability to build production quality apps?
Introducing Full Stack Rails Mastery
A premium education program designed to teach you not only the tips and tricks to build scalable production grade web apps step-by-step, but also challenge you along the way to really understand the why behind the code (not just the how and what).
Because we will be building a real-world web app gradually from the ground up.
There's a detailed table of contents further down this page but in a nutshell, this is what we'll build:
- 2-sided Marketplace - buyers and sellers
- SaaS - subscription business model for access to specific software features
- eCommerce - charging one-time fees for goods, shopping cart for buying multiple products
- Social network - users following each other, writing product reviews
- Blog - CMS to publish content (text, images, video)
Instead of learning concepts in a vacuum, you will learn them as and when you need them to build this app.
There will be challenges after every few lessons to keep you engaged and really understand the material.
What exactly is inside the course?
TABLE OF CONTENTS
Building a simple 2-sided marketplace app (Published)
Introduction to building a simple 2-sided marketplace app (FREE Preview)
How to set up a Rails 7 app with Devise gem for user authentication (FREE Preview)
How to set up data models for the marketplace (Published)
How to set up the homepage and product pages (Published)
Challenge 1: Fix the product editing bug (Published)
Solution to Challenge 1: Fix the product editing bug (Published)
Accepting payments with Stripe (Published)
How to set up Stripe in a Rails app (Published)
Adding session info and links (Published)
Add a buy button and checkout form (Published)
How to handle Stripe webhooks to fulfill orders (Published)
Challenge 2: Replace hardcoded Stripe price id with product-specific ids (Published)
Deploying Rails apps
How to deploy a Rails 7 app to Fly.io (FREE Preview)
Styling with CSS
How to use CSS in Rails 7 - An Overview (FREE Preview)
How to use the asset pipeline
How to use CSS frameworks like Tailwind and Bootstrap
Blogging and CMS features
Rich text editing
Attaching and displaying images
Hotwire
Stimulus
Turbo - Drive, Frames, Streams
Javascript building and libraries
Importmaps
JavaScript bundling
Javascript frontend libraries and frameworks - React, Vue, Angular
Comparison to Hotwire
Social network features
Profiles
Reviews
Following
Notifications
eCommerce features
Shopping cart
Send purchase receipts via email
Process Refunds - refund money and remove access to product
Seller payouts via Stripe Connect
Software as a Service (SaaS) features
Monthly and annual subscriptions
Multi-tenant apps - unique subdomain per customer
User authorization, Teams and permissions
Add Teams with multiple users
Manage user roles - pundit/cancancan
Inviting team members
Designing a Rails API
grape gem
Presenters
Swagger for documentation
Authenticating with a Rails API
Views and templates
ERB
HAML
View Components
Testing
Background jobs
Database essentials
Logging and monitoring
Design Patterns
Performance Tips
Using Third Party APIs
Miscellaneous Tips
I'm pouring everything I've learned over the last 13 years working with Rails into this program.
I've made many mistakes and learned to write good Rails code the hard way.
This course is your shortcut to avoid the same mistakes I've made.
NOTE: This is a pre-order. The course is under production. Lessons are being published on a rolling basis until all the modules are complete.