“Our goal is for RFCs to be lightweight, low-process, and effortless to create and use.”
Flutter is an open-source UI software development kit created by Google.
"An RFC is a form of communication aimed at both spreading and gathering knowledge”
IETF coined the term RFCs. RFCs started as informal technical notes but now contain technical specifications and organizational notes for the Internet.
“The philosophy of our RFDs is exactly this: timely rather than polished, with the immediate idea of promoting technical discussion.”
Most open source projects cite Rust’s RFC process as being the source of inspiration for their respective RFC process.
Design docs on how the Chromium browser works.
Design docs for Magento 2, a popular eCommerge engine.
“Design proposals for substantial feature changes for gRPC that need to be designed upfront”
“The purpose of the KEP process is to reduce the amount of ‘tribal knowledge’ in our community.”
Artsy uses RFCs for “development process / cultural changes rather than feature architectural design”.
“Your explainer is a living document that describes the current state of your proposed web platform feature, or collection of features.”
“GOV.UK staff use this repository as a forum to discuss and make technical decisions.”
Design proposals for ksqlDB, the database purpose-built for stream processing applications.
Design docs for Hazelcast, a distributed computation and storage platform.
“Your job as the RFC author is to navigate the issue at hand and propose an opinionated solution.”
Crossplane’s docs start as proposals, then become proposals, then finally become design docs.
TiDB is an open-source, cloud-native, distributed, MySQL-Compatible database
“We want the end result to feel like it's been designed, rather than merely written.”
“The idea is to go slower at the beginning and get everything out on the table so we can go fast when implementing.”
“The primary goal of the process is to enable iterative, productive conversations about proposals that influence the future direction of Puppet Projects.”
RFCs for Hasura, a GraphQL API server.
Design docs for AWS EKS Anywhere, a deployment option for AWS EKS that allows operating Kubernetes clusters on your infrastructure
Amundsen is a data discovery and metadata engine.
Design docs for AWS Serverless Application Model (SAM) CLI, an open-source CLI tool for developing serverless apps.
Design docs for FoundationDB, an open source, distributed, transactional key-value store created by Apple
Unity Multiplayer provides tools needed to build multiplayer gaming experiences.
Redpanda is a streaming data platform for developers.
“A designdoc is a short document clearly articulating a problem, a solution to that problem, and why we think the proposal is the right solution”
Sentry uses 3 types of RFCs – a feature RFC, a decision RFC, and an informational RFC.
“In short, design docs help us build the right thing, keep everyone on the same page, and provide records for later.”
“Even with an intent to foster a community of developers, it's natural to accidentally build a habit from the closed-door design process.”
RabbitMQ Cluster Operator is a Kubernetes operator to deploy and manage RabbitMQ clusters
Mercari is a Japanese eCommerce company that operates a community-powered marketplace
“Most large projects start with a PRD to define the problem and are followed by an RFC to propose a solution.”
WePay’s template for documenting microservices
Design docs for Yugabyte, a cloud-native distributed SQL database.
Eraser is an online whiteboard, diagramming, and documentation tool designed and built by engineers for engineers. Our goal is to help technical teams make the best design docs possible.
Don’t see a design doc repository that you follow? Submit a request to add it to the DesignDocs.dev library