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.
It's time we start cleaning up the design and UI for a better experience with our URL shortener.
Now that we've got a thorough test suite, we want to make sure tests are run anytime we push code to GitHub. We can setup GitHub Actions to test our code and automatically deploy it when tests pass.
Congratulations! We're all done! We now have a fully featured URL shortener that does everything we need plus some cool extras.
Rails now ships the Trix editor as a separate gem (action_text-trix) instead of being included in ActionText. This allows for separate releases independently of Rails.
To start, let's create our Rails app for our domain monitoring SaaS. We'll also setup TailwindCSS so that we can design the UI as we build it.
MQTT is a message protocol for Internet of Things devices. It's very similar to pubsub where you can broadcast and subscribe to different topics. Learn how to send messages to an MQTT broker in this tutorial.
Learn how to use Arrays in your Ruby code
Learn how to use Hashes in your Ruby code
ActionText builds on top of the ActiveStorage file uploads feature in Rails, so we're going to configure Amazon S3 storage so we can upload files in production
Next up, we need to be able to edit and update the passwords in our password manager application
Normalizing data has always been a pain in Rails, but not anymore! Instead of callbacks or overriding setters, Rails 7.1 introduces "normalizes" to make normalizing data easy.
Last but not least, let's update the Video scaffold UI to be more polished so we can trigger syncs and
Next, we need to sync videos using our API client which we'll do with a higher level abstraction to integrate with the API.
Now that we can sync videos to our local database, we need to run this on a regular schedule. We'll use SolidQueue's recurring tasks feature to create cron jobs that run periodically for syncing.
In this lesson, we'll create a job to download a video, extract the audio with ffmpeg, transcribe the video with Whisper, and upload the captions to our hosting provider.
First things first, we need a Link model to store our
Analytics for links is a useful feature so lets record Views for links and show them in a graph
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.