Ruby on Rails is one of the most popular Ruby frameworks, but it's not the only one. Hanami 2.0 is faster than Rails and packed with exciting features—it might be the tool you need for your next project!
Data structure and type validations are so essential in modern Rails apps. You've probably used Active Model validations and strong parameters, but did you know there is a better way? This article introduces the dry-schema gem—a faster alternative to the defaults!
Generators are a powerful feature you can use to automate routine tasks in Rails—but do you know how to make your own? This article explores Rails generators in depth, including how to build a generator from scratch.
Accepting user input is critical to modern Rails applications, but without validations, it can cause problems. In this article, learn how to use
ActiveModel validations to ensure the data you process is safe.
Want to deploy a Rails app with Docker and AWS, but not sure where to start? AWS Fargate simplifies the convoluted process of deploying Docker on Amazon's Elastic Container Service (ECS). It's also a good alternative to Heroku.
Getting data into your database is easy, but querying large datasets is challenging—especially without the right indexes. Pavel Tkachenko teaches how to write performant SQL queries with EXPLAIN and ANALYZE.
Internationalization means adapting your application to the language and culture of your users—a difficult task! Luckily, Rails provides the I18n API. In this article, Pavel Tkachenko shows us how to start translating.
Rails defaults to minitest, but much of the community has adopted RSpec—which is right for you? In this article, William Kennedy compares RSpec and Minitest in a new Rails app.
RSpec provides tools that help you test the behavior of your Ruby objects. Join Abiodun Olowode for a tour of mocks, stubs, and spies—and learn how to use them in your Ruby projects!
If you're finding performance bottlenecks with full-text search in your database, it may be time to switch to Elasticsearch. In this tutorial, Ianis introduces Elasticsearch and shows us how to implement an efficient search feature in Rails.
Containers are popular because they create a reproducible environment that you can deploy to production and run locally in development. However, containerizing a Rails app can be tricky—Jeff Morhous helps us navigate the pitfalls.
PostgreSQL and MySQL are great for structuring data using relationships, but what if you don't always know the structure up-front? That's where
ActiveRecord::Store really shines. It's like NoSQL, without changing databases.
Do you need to process a lot of data in real time? Event streaming is a pattern that could help. David Sanchez walks us through how to do event streaming in Rails with Apache Kafka, the popular open-source event streaming platform.
What if you could write sloppy code and have Ruby fix it for you automatically? With RuboCop, you can! Of course, linters and auto-formatters have other benefits, even if your code is pristine. Join Ayooluwa Isaiah for a tour of RuboCop.
If you define the same method on a class, a subclass, and a mixin, which one gets called first? Join Abiodun Olowode in an exploration of Ruby's object model!
Have you ever wanted to accept payments in Rails? With Stripe Checkout, it's never been easier. Jeffrey Morhous shows us how.
You've probably used
Rails.cache to read, write, and fetch cached data in Rails—but did you know you can also work with counters? In this series, Jonathan Miles introduces us to some of the lesser-known tools hidden in your Rails codebase.
There are many excellent authorization libraries for Rails, but did you know it's not that hard to build this functionality yourself? In this article, Renata Marques shows us how to use the Policy Object Pattern to implement access control in our Rails apps.
Modern web UIs are complex. Traditional layout/template/partial techniques are not always the best fit. ViewComponent seeks to provide a better way. It's a framework for creating reusable, testable & encapsulated view components that integrate seamlessly with Rails. In this article, Abiodun Olowode shows us how to use ViewComponent to make our Rails views more manageable.