Why Rails?

I touched on it briefly in the “What is Ruby on Rails?” section, but no worries. Ruby on Rails allows developers (that's you!) to be really productive quickly for building apps. Teams of all different sizes and backgrounds have all been able to build and iterate on products quickly with Rails.


How does Rails do this? Well, Rails helpfully includes a ton of super helpful frameworks that you can leverage to build your next application. Do you envision needing some kind of real-time chat using “WebSockets”? ActionCable helps you out there. You want users to be able to upload images? ActiveStorage has you covered. 


Want users to be able to do fancy things like bold their text or include images in descriptions? ActionText, with an assist from ActiveStorage, will do the trick.


While it is possible to make a web app that doesn’t need a database, Rails includes ActiveRecord that makes it super easy to create and view records in a database. You can even use different databases like PostgreSQL, MySQL and a few more.


Don’t know for sure what you want or need? That’s okay. We’re going to go over almost everything in the course, so you’ll get a good idea of the true power of Rails.

Tooling and Community


Additional benefits to picking Rails in 2020 is that the community and tool ecosystem has matured greatly. We have so many great resources for learning and growing, with screencast sites like GoRails you can continue to grow as a developer. Our tools are stable, and there is almost a Ruby gem for everything you could think of.

Learn Rails by Building Instagram (2019, Rails 6)

Buy nowLearn more

Introduction

  • What is Ruby on Rails?
  • Why Rails?
  • Initial Setup Requirements / START HERE2
  • Troubleshooting Checklist
  • What are we Building?

Getting Started

  • Running rails new2
  • Installing Bootstrap with Webpacker1
  • Setting up our Basic Navbar

Adding Users

  • Installing Devise / Generating User model
  • Updating our Navbar with working links
  • Extending the User Edit page
  • Adding Flash Messages3
  • Adding User Profiles1

ActiveStorage Introduction

  • Installing ActiveStorage / Adding Avatars to Users

Posts

  • Creating Post Model and Controller1
  • Adding Validations1
  • Adding Post Feed (Post index)2
  • Adding Posts to Profile / Post Deletion
  • Adding Likes to Posts7

Post Comments

  • Starting to add Post Comments1
  • Installing Stimulus.js & Finishing Basic Comments
  • Paginating Comments for infinite scroll (custom pagination with Stimulus)
  • ActionCable Introduction / Realtime Comments
  • Comment Fixes / Touchups
  • Allow Adding Comment on Post Creation1

User Following

  • Creating our Follow model
  • Wiring up Following
  • Only See Posts From People You Follow

Preparing for Production / Deployment

  • Polishing User Profile
  • Polishing User Edit Page & Devise Error Message Helper
  • Polishing Signup and Login Pages
  • Polishing Forgot Password and Welcome Page
  • Adding Local Time
  • Deploying to Hatchbox1

Conclusion / Thank You

  • Thank You!
  • Provide Feedback Here
  • Source Code