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.
Cheap, easy hosting for Ruby and Rails apps.
Launch your product business way faster with our SaaS template.
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.
Rails 6.1 introduces a new feature called "disallowed_warnings" which causes exceptions to be thrown anytime deprecated code is run. This makes it really easy to track down deprecations in your code and fix them quickly.
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
ActsAsTenant needed some maintenance so we're going to walk through the steps of refactoring the gem and Rspec test suite
Ever wanted to restrict user registrations to an account's work email or corporate email domains in your Rails app? It's a lot simpler than you might think.
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.
Flash messages are typically a simple string saying something succeeded or failed. What if we wanted to add buttons like you see in most applications? It's easier than you might think!
It's a common situation that we need to submit complex data in our forms in our Rails apps. We'll explore how can we transform the simple values browser forms allow and convert them into something Rails can use and transform into Ruby objects.
Row-level multitenancy is an easy, scalable approach to restricting access to data in your application between tenants. Using the acts_as_tenant gem, we can enforce this automatically throughout our Rails applications.
Building a gem can be complicated. Often times you're writing abstract, meta code so it can be used flexibly in situations you'll never imagine. We'll talk about the architecture and design of the noticed gem and how it all works.
User mentions in group chat is a crucial feature, so this week we're taking a look at how to add @ mentions for our users in chat with regex and more.
It's important to see that there are unread messages in channels you're not actively viewing. We can use a very simple event in ActionCable to do this and bold channel names with unread messages.
One fantastic way to improve Rails performance is by using Etags to help the browser keep track if a page has changed or not. This can help Rails skip rendering views entirely and save lots of time.
Contribute to Rails by discovering something you could improve and learning how to add features to Rails
Webpack bundles can be confusing as to what actually ships in production. Using the bundle analyzer plugin, we can visualize and see exactly what libraries and files are taking up what space.
Keeping track of a user's last read timestamp for each chat room is straightforward, especially when we use Stimulus.js to update it from the client side.
Using the Intersection Observer API, we can refactor our infinite scroll example to be much more efficient and simpler to use
Sometimes you might want to keep track of all classes a module was included in. We can do that with a couple nifty tricks to make this work with both regular Ruby modules and Rails concerns.
Join 80,973+ developers who get early access to new tutorials, screencasts, articles, and more.
We care about the protection of your data. Read our
© 2024 GoRails, LLC. All rights reserved.