Build Room Booking site like AirBnb with Ruby on Rails - Level 2


Leo Trieu


Full Source Code

Discussion Support


This project is a series of 3 Projects (Pikachu, Kong, Godzilla) with 3 different levels (Level 1, 2, 3). We are going to build a platform like Booking or Airbnb.

In this project, I will walk you through steps to develop apps like Booking, Hotels or Airbnb with core functionalities from scratch. You don't need to learn everything about HTML, CSS, Javascript or Ruby on Rails to just create a web application. In my methodology which I called POA (Product-Oriented-Approach), you just need to learn what you need. Doing this way, it won't make you a super star developer but will get you something REAL quickly and efficiently, especially for Entrepreneurs & Founders.

Who It's For

  • Beginners

  • Promotion seekers

  • Entrepreneurs & Founders

  • Designers

  • Front-end Developers

What skills will we learn during this Level 2?

  • How to quickly create a web app with Ruby on Rails.

  • Style your web app easily and quickly with Bootstrap.

  • Understand workflow of how to create a marketplace platform.

  • How to send SMS for any type of events .

  • How to use Action Cable for Real time events.

  • How to create and manipulate Calendar Scheduling.

  • How to create payment with Stripe.

  • How to create payout with Stripe Connect.

  • How to create revenue bar-chart with Ruby on Rails easily.

What features will we build in this Level 2?

  • Dashboard for Hosts + Guests

  • User Identification with SMS (via mobile #)

  • Real-time Private Message with ActionCable

  • Setting Instant/Request Booking

  • Calendar - Setting Availability and Price

  • Calendar - Showing Reservations

  • Payments with Credit Card (via Stripe)

  • Payout to Hosts with Stripe Connect

  • Revenue Charts for Hosts

  • Sending Email Notification When Booking Successfully

  • Sending SMS When Booking Successfully


You need to complete the Airbnb Level 1 first to be able to enrol into this Level 2

Sample Videos

Video # 1
Video # 2
Video # 3
Video # 4
  • 61c4e5784ef8adaad917dd2d0cda1df3

    Denis Wambua

    Learnt a lot, thanks Leo

  • Picture

    Alexa Andrei

    Good One

  • 9f66bd4a6821bf0b101dd3a7538fecfd

    Daniel Bahamon

    This course is very complete! Thanks.

  • 3763c3d3cedf2ac7963213f8eac840bd

    Kenny Lai

    Absolutely amazing experience from Airbnb Level 1 to Airbnb Level 2. Am looking forward to Airbnb Level 3. These courses are by far my best experiences with programming and they have exceeded my expectations. Great job on the courses. Leo!

  • 3b00ea0f969d0b5e2e606264db4fe82f


    Clear instruction and very useful tips. Leo is the best teacher you can find for RoR!

  • F4b8cf299a3d694136cc8d1f55bba6ca


    Leo has managed to carry out the course very well, presenting the concepts and strengthening them throughout the exercises. True, that I have ever found myself in some situation, in my life, it has not worked for me, a version of the text has been used, nor has it been asked or looked at in the section of questions already asked, it has always found someone to which I have not had problems to perform all the exercises. Thank you very much for every teacher!

  • B90c2f4da7bdd25732138740a55c2815



  • Picture

    Daniel Donche Jr.

    I have done probably 7 or 8 rails courses over the past year. I've had to take several to get different features I needed because they were all incomplete. I'm even talking about Treehouse and Udemy. This one is the first one I thought was complete, and I came here specifically because I needed to get Stripe working and none of the information I found online helped me. I don't feel I'm a beginner with Rails, but I just couldn't get it to work. After following Leo's videos, I was finally able to get this imperative feature to work on my site. He also adds many features in the projects you just aren't going to find anywhere else. He explains everything very clearly, and I've picked up quite a few techniques that I've not seen in other tutorials. I highly recommend this.

  • Picture

    Sudip Lahiri

    Leo is an excellent Instructor.

  • C90ea0db9394cdbeadf984187a562db4


    Good course overall and very good teacher. The only issue is time. As time passes, some things change, for example, paperclip isn't being supported anymore but you use it in this course. Or if you use bootstrap 4, which is different than bootstrap 3 that is used in this course, you will have to understand the differences as you're coding and may even run into issues with the "card" classes, ie bootstrap card vs credit card...So just keep in mind, you will likely have to modify somethings and do some research outside of the course as well. I'd recommend this course for sure.

  • 9deba7bc11411f59538946e780b498ff



  • 9e068f8288dac428a3ec28bdf2d81b97


    A great course, as with all the others. Leo & his team are so patient and kind. I learned so much, and cannot wait to start on AirGodzilla

  • Photo

    Nicholas Shawn Nadel

    Thanks Leo

  • B51fe7d2d6b9a094382f502214bec5a1

    Jason Noronha

    I learned a lot from this course. It's complex at times but definitely very useful. Thanks Leo!

  • 8978280?v=4


    Great job. Very comprehensive, and a good way to learn by building a real complex example. I am not going to lie, i was sweating a little when we started coding credit card information on our front end, but the course masterfully explained why it was bad and got us to PCI compliance. Well done and thanks. See you in level 3!

  • C705d669b71e1a0f35eba85a38392c8f

    Cédric Césaire

    Great job Leo !

  • Photo

    Natsuki Sugawara

    awesome course!

  • Photo

    Chris Parisi

    Another great course with Leo! The lessons are paced perfectly and you get to learn how to work with some really cool features! I can't wait to work on the others!

  • Picture

    Luke Hallinan

    This course was awesome and Leo was ridiculously helpful. I learnt so much doing it. Will happily buy more courses in future. Keep up the great work Leo!

  • Picture

    Rafid Hoda

    I really like Leo's approach to teaching. By the end of this course you'll have built a fairly advanced Rails web application that can actually be used. Highly recommended for people just starting out with Rails... like me.

  • Picture

    Ryan Harmon

    I have taken many tutorials on other Ruby on Rails and on frameworks (Laravel, Django) and I could not stick with the framework because I was not learning how to actually build something. I was only learning theory, MVC, and the language specifically. Finally, after building AirAlien with Leo I am excited to go back and learn about theory, MVC, and the language behind Ruby on Rails because I have accomplished my dream of building an app! My dream was not to become a Ruby master, but after taking this course I feel confident to go back and build my Ruby skills and become a Ruby master one small step at a time.

  • A16ed937bd29fccd12bb10657a217d1c


    Awesome course. Thanks to Leo, now I can build powerful and functional apps on my own.

  • 3b773200a0e85078ebead1494f6c5435

    Joe Minock

    Another great application from Code4Startup. After starting with the Rails Newbie and Pro versions of the Hero lesson, this is the ideal next step. Much more JavaScript / JQuery / Ajax and a more interactive application. If you're working on becoming a full-stack rails developer... You'll LOVE this project and you'll learn a lot.

  • Photo

    Amul Patel

    Another amazing course.. Thanks so much guys!!

  • Photo

    Daniel McDonald

    Love your work Leo! Your tutorials always leave me with a much deeper understanding of what I'm doing. Keep making stuff like this and I'll keep supporting it!

  • Intro

    • Here's what we're going to build 4:59  
    • Download Full Source Code  
  • Task 1: Creating User Dashboard

    • What we're going to build in this task 0:35  
    • Dashboard Controller 4:23  
    • Dashboard View 10:33  
  • Task 2: Verification with SMS

    • What we're going to build in this task 0:42  
    • Twillio 4:25  
    • SMS Configuration 7:08  
    • SMS Controller 5:59  
    • SMS View 15:22  
  • Task 3: Instant/Request Bookings

    • What we're going to build in this task 1:11  
    • Instant/Request Booking Model 4:08  
    • Instant/Request Booking Function 11:16  
    • Approve/Decline Reservations 8:26  
    • Reservations status 5:13  
  • Task 4: Calendar

    • What we're going to build in this task 0:58  
    • Calendar Controller 12:59  
    • Host Calendar Page 17:27  
    • Improving Host Calendar 12:37  
    • Calendar Next/Back 7:35  
  • Task 5: Availability and Pricing

    • What we're going to build in this task 1:02  
    • Calendar Availability Model 5:41  
    • Calendar Availability Form 23:04  
    • Calendar Pricing 15:26  
  • Task 6: Payment

    • What we're going to build in this task 0:31  
    • Stripe 5:59  
    • Payment Controller 6:18  
    • Payment Form 12:35  
    • Reservation Charges 13:27  
    • Improving Payment Form 16:40  
  • Task 7: Payout

    • What we're going to build in this task 0:44  
    • Stripe Connect 7:24  
    • Payout Process 7:58  
    • Payout Page 11:24  
    • Revenue Splitting 5:50  
  • Task 8: Revenue Chart

    • What we're going to build in this task 0:48  
    • Revenue Chart Settings 14:47  
    • Revenue Chart Page 6:19  
  • Task 9: Notification with SMS and Email

    • What we're going to build in this task 0:36  
    • Sending SMS for a Successful Booking 3:26  
    • Sending Email for a Successful Booking 5:56  
  • Task 10: Notification Settings

    • What we're going to build in this task 0:31  
    • Settings Model 4:24  
    • Settings Controller 4:51  
    • Settings View 5:43  
  • Task 11: Private Messages

    • What we're going to build in this task 0:39  
    • How it works 2:08  
    • Conversations and Messages Model 6:07  
    • Conversations and Messages Controller 9:57  
    • Conversations and Messages View 22:53  
  • Task 12: Real time messages with Action Cable

    • What we're going to build in this task 0:54  
    • Action Cable Configuration 2:55  
    • Real time messages 12:42  
  • Task 13: Real time Notification

    • What we're going to build in this task 1:41  
    • Notification Model 8:09  
    • Notification Controller 10:28  
    • Notification View 11:51  
    • Improving Notification View 6:24  
  • Task 14: Extra Add-ons

    • Update Room Searching Fucntion 3:55  
    • Unavailable Dates on Date Pickers 10:23  
    • Special Price When Booking 16:52  
  • What's Next? - Airbnb Level 3

    • About Level 3 - AirGodzilla Project 3:53