docs: Add a Design Doc blueprint.

This should be the template for all new Design Docs, minor deviations aside.
Hopefully this makes the process a bit easier.
This commit is contained in:
Philip Metzger 2024-06-17 22:30:36 +02:00 committed by Philip Metzger
parent c4777e4721
commit 3b2197c74a
3 changed files with 63 additions and 0 deletions

View file

@ -0,0 +1,56 @@
# Title
> A cool name for your Project
Author: [Your-Name](mailto:your-name@reachable.com)
> If there are multiple authors, just list them all
## Summary
A short summary of your project/re-design/component and what problems it
addresses in about 3-10 sentences.
## State of the Feature as of `$VERSION` (optional)
The state of the feature you want to improve and where it currently falls
short. If there's nothing to compare to, leave it out.
## Prior work (optional)
Does this feature exist somewhere else and which tradeoffs it made.
> If there's no prior work, then use the related work section below.
## Goals and non-goals
Direct goals of the project and features deemed not worth pursuing.
## Overview
A detailed overview of the project and the improvements it brings.
### Detailed Design
The place to describe all new interfaces and interactions and how it plays into
the existing code and behavior. This is the place for all nitty-gritty details
which interact with the system.
## Alternatives considered (optional)
Other alternatives to your suggested approach, and why they fall short.
## Issues addressed (optional)
A list of issues which are addressed by this design.
## Related Work (optional)
If there's a feature in another VCS which shares some similarities to your
proposed work, it belongs here. An example would be Jujutsu sparse workspaces
and Perforce client workspaces.
## Future Possibilities
The section for things which could be added to it or deemed out of scope during
the discussion.

View file

@ -20,3 +20,9 @@ Jujutsu, you'll need to go through this process.
[Rust RFCs]: https://github.com/rust-lang/rfcs
## Blueprint (Template)
You can find the base template of a new Design Doc
[here](design_doc_blueprint.md).

View file

@ -129,6 +129,7 @@ nav:
- 'Guidelines and "How to...?"': 'contributing.md'
- 'Code of conduct': 'code-of-conduct.md'
- 'Design Docs': 'design_docs.md'
- 'Design Doc Blueprint': 'design_doc_blueprint.md'
- 'Design docs':
- 'git-submodules': 'design/git-submodules.md'