I’ve been recently working on a Slack bot and Slack delivers all events (webhooks)
to the same URL that you can configure. That means you need to distinguish
between different events types based on the payload (request body).
In the past, I’ve seen that
Rails apps usually reimplement their own “slack routing” within a single controller
action. I wanted to share a different solution that I came up with.
Let’s do routing in rails routing.
For the past few months I've been introducing sprints into a chaotic startup that's been growing so fast everyone's got whiplash. Since August, 5 engineers turned into 12. I think it's starting to work.
In this guide I will explain how I configured and deployed a Rails 8.0.2 application using Kamal 2 with a Postgres database running as a kamal accessory on a single Virtual Private Server (VPS).
The presenter pattern is a handy design approach that sits between your views and models, helping you keep your code organized by handling view-specific logic in a clean and maintainable way.
Let’s explore how to use it you your rails app.
Every Rails app has a breaking point. Follow along and learn how to test your application's performance under load with the Apache JMeter's Rails load testing.
Read the previous article to learn how Propshaft and importmap-rails work together to form the Rails 8 Asset pipeline. That article focuses on the interplay between the two and explains more of the importmap-rails side. Now, let’s dive into how Propshaft actually processes the assets.
Learn how to create animated accordions using only HTML and modern CSS with the details element, interpolate-size, transition-behavior, and the :has() selector.
Exploring customizable select elements. This series explores styling possibilities. The first article covers the history and provides a guide to building a custom select as a progressive enhancement. Styling selects with CSS for unique and fun experiences.
Hey Rails devs. I learned something new today I wanted to share. So doing OR queries in active record can be complex. For 1, you have to reference a whole query. For example, you can’t do this: Â