EngineeringThe ultimate guide to securing data for Rails developersAugust 12, 2022Everything you need to know to secure your Ruby on Rails applications. From database connections to encryption. From a team of seasoned Rails devs.Guillaume MontardTanguy JoannotEngineeringInfinite scrolling pagination with Rails, Hotwire, and TurboMay 24, 2022Infinite scrolling is a solved problem, but there are a variety of solutions. Here are some of our favorite approaches to implementing it with Hotwire.Yaroslav ShmarovPhil HaytonEngineeringTips for using tree sitter queriesApril 6, 2022Tree-sitter is a powerful library for parsing all kinds of languages, but sometimes it can be tricky. Here are our tips on making the most of its queries.Vjeran FistricEngineeringThe difference between Turbo Streams and Turbo FramesMarch 22, 2022On the surface, it can seem like Turbo's streams and frames are solving the same problem. Here's a quick overview on how they differ, and when to use each.Elizabeth BraaeEngineeringSnapshot testing ViewComponents with RSpecMarch 9, 2022ViewComponents are great, but testing them can be cumbersome. Here's how we approach using snapshot testing in these components in our Rails app.Phil HaytonEngineeringHow we use Static Code Analysis to map data flowsFebruary 16, 2022We're often asked how we map data flows. The answer is Static Code Analysis. Here's how we got to this point, and why we think it's a valuable technique.Cédric FabianskiEngineeringHow to build modals with Hotwire (Turbo Frames + StimulusJS)February 8, 2022Modals are a great use case for showing the power of Turbo frames and Hotwire. Here's an example of how we do it at Bearer.Yaroslav ShmarovEngineeringWhy Hotwire in 2021December 2, 2021Find out why engineering team at Bearer made the decision last year to swap from a React on Rails SPA to a Hotwire application.Cédric FabianskiElizabeth BraaeEngineeringSolving alias_method and prepend Conflicts in Our Ruby AgentNovember 17, 2020Ruby gems can sometimes conflict when instrumenting the same methods. See how we handle this issue by giving users the choice of which technique to use.David Roe1 / 2Next