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.
Learn how to build fast, modern web apps with HTML over the wire.
Setup your computer with Ruby on Rails and deploy to a production server.
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.
A few of the Open Source projects we do at GoRails.
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.
Not eager loading in your Rails applications can have series performance side effects. Rails now comes with a strict_loading feature that you can use to make sure that queries are run in an efficient manner.
Using some Ruby metaprogramming and class_eval, we can build Notifiers that allow us to dynamically define STI models and inject code into them with our notification system.
We need to keep track of the web pages we want to monitor and scrape data from, so let's create our ActiveRecord model for storing this information and a Result model for storing the result each time we scrape a web page.
Rails tracks the row count and affected rows for queries made with ActiveRecord. A recent PR makes a tiny, but important change to the PostgreSQL adapter to make the row count significantly more efficient.
Now that users can manage domains, let's integrate our key feature: syncing domain expiration with RDAP.
Next, we need to track domains and associate them with users in the database.
For users with many domains, sorting is going to be a really useful feature. Let's add links to the table column headers for sorting by name, expiration or last checked at.
Let's write some tests to ensure that our logic is correct for the Domain model.
Emails will be a critical feature to notify users when domains expire and become available for purchase. Let's add these using ActiveRecord callbacks.