citusdata / citusdata/citus

Add Architecture.md

Open
#4,657 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
12.8k
Forks
794
Avg merge
2d 14h
Merged PRs (30d)
31

Description

From https://matklad.github.io//2021/02/06/ARCHITECTURE.md.html:

>I find ARCHITECTURE file to be a low-effort high-leverage way to bridge this gap. As the name suggest, this file should describe the high-level architecture of the project. Keep it short: every recurring contributor will have to read it. Additionally, the shorter it is, the less likely it will be invalidated by some future change. This is the main rule of thumb for ARCHITECTURE — specify only things which are unlikely to frequently change. Don’t try to keep it synchronized with code. Instead, revisit it a couple of times a year.

Which I think could indeed be useful.

An example:
https://github.com/rust-analyzer/rust-analyzer/blob/d7c99931d05e3723d878bea5dc26766791fa4e69/docs/dev/architecture.md

Contributor guide

Open the contributing guide

Research direction

Read the linked ARCHITECTURE.md guidance and the rust-analyzer example first. Then build enough understanding of the Citus project to summarize its stable, high-level architecture. Done means adding a short Architecture.md that follows the stated principle of avoiding frequently changing implementation details.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, postgresql
Domain
databases, documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.