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.
Copy to clipboard is a required feature for a URL shortener. We'll implement this with two JavaScript libraries (clipboardjs and tippy.js) and a Stimulus controller.
We're ready to deploy our URL Shortener to production and we're going to do that using Hatchbox.io
Anyone can add, edit, and delete any Link in our URL Shortener database. Your challenge is to add users, associate links with them and only allow editing of your own links.
Here's how we'd add Users and handle edit permissions for links. See how it compares to your implementation and consider the pros/cons of each approach.
Once our application has lots of links, it will become impossible to use. Let's add pagination to make our application usable once we have hundreds or thousands of links.
We take care of submitting a message without having to click the form button, and fix an issue we create in doing so around replacing the form. We end with planning our next steps.
We handle scrolling the most recent message into view upon page load along with any new messages that come through while on the page. We also broadcast new messages so everyone stays up to date.
In this episode, we refactor our code to use broadcasts_refreshes to get an extremely simplified version of a chat application.
Learn how to use the CodeMirror editor in your browser using Importmaps.
Planning our future work on simple_calendar and what we're going to accomplish
The Rails generator helpers have always been a little lacking in flexibility. While building the Madmin gem, I ran into an issue with the route generator and decided to take the extra time to contribute back to Rails.
Testing a gem or your Rails app against multiple Ruby and Rails versions is super useful, but we also take it a step further and test our gem against several different databases too
Tweet Validations
Creating a GitHub Repo to store our code
Rails apps and Rubygems might need to support multiple databases. We can use the DATABASE_URL environment variable to quickly swap out the database that Rails uses in CI, local testing, and more.
In this episode we will look at how to use Webmock to test our API Clients.
You might not realize your code has concepts that need to be extracted. Sometimes it's as simple as a small decorator around a Ruby class as we'll see in this lesson.
In this video, you'll learn about a feature of IRB, which is the ability to change context into an object.
Whisper.cpp is an open source C/C++ port of OpenAI Whisper that we can use with Ruby for transcribing our videos. We'll also look at how ActiveStorage runs executables like ffmpeg to see how it works behind the scenes just like with what we're building.
Using Base62, we can take an Integer ID and compress it for short codes in our URLs
Join 91,035+ developers who get early access to new tutorials, screencasts, articles, and more.
We care about the protection of your data. Read our Privacy Policy.