Volmer's Rails Guide

About this guide

This is a project to define a sustainable architecture for software development in Ruby on Rails. It is a collection of ideas, lessons, and best practices that allows Rails apps to be easy to change and acommodate new features.

In fast growing teams, Rails apps need to be maintained and extended while running flawlessly to best serve the business and its customers. Defining an architecture that allows sustaining constant modifications is a software design challenge faced by engineering teams everyday.

From that challenge comes useful practices and patterns proven to help escalate software development for the long term. This guide is an initiative intended to formalize a few of these common practices, particularly around input validation, use case coordination, and data modelling/persistance.

This guide is not the definitive architecture for Rails. It is simply a good starting point. The proposed layers are intended to be used as specified, or as inspiration to help developers design soluations for their own needs. The goal of this project is not to be perfect; rather, it recommends practices with thoughtful trade-offs that can pay for themselves in the long run.

I hope the ideas documented in this Guide can help you and your team deliver great products built with Rails, in a sustainable, happy, and fun journey.

Volmer contemplating the infinity of the universe

Volmer Campos Soares

The Author

Volmer has been doing Ruby for the last 15 years. He is Brazilian-Canadian, currently enjoying life in Montreal.

Volmer is passionate about designing great products that improve people's lives. When not coding, he spends his time with other passions such as nerding out about coffee, playing Brazilian music, and travelling.