Guides is a collection of programming style guides and best practices documentation.
The project addresses the need for consistent coding standards and collaborative practices across teams and projects. It provides structured guidance across multiple dimensions: programming languages, frameworks, collaboration protocols, and tools. The approach uses clear language conventions to distinguish between levels of recommendation, distinguishing "avoid" from "don't," and "prefer" from "use," so teams understand which guidelines are flexible versus absolute. The guides emphasize consistency within existing codebases over retroactive refactoring, and allow exceptions when teammates can be convinced of a good reason.
The guides span a broad range of technologies and practices, making them most useful for teams already working with the thoughtbot tech stack or seeking comprehensive guidance across multiple domains. The collection includes language-specific guides for Ruby, Python, JavaScript and TypeScript, Bash, CSS, Sass, HTML, ERB, Shell, and Swift; framework guides for Rails, React, React Native, Android, and iOS; protocol guides covering accessibility, data handling, email, object-oriented design, security, web standards, and web performance; and tool guides for Git, GraphQL, Postgres, and relational databases. Teams should adopt these guides if they value explicit, documented standards and want to reduce decision-making friction around code style and team practices.
The project operates with a deliberate review process: contributors with commit access are expected to wait a week before merging changes to allow time for team feedback. This reflects a commitment to consensus-building around guideline updates rather than rapid iteration. The guides are maintained as living documentation distributed under a Creative Commons Attribution License, indicating they are intended for broad reuse and adaptation.