From 2b20e7e89c31fd759fc52e837585ee46f21e10a4 Mon Sep 17 00:00:00 2001 From: Alejandra Date: Thu, 29 Jan 2026 12:03:35 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=9D=20Add=20CONTRIBUTING.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CONTRIBUTING.md | 65 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000000..7e725a3fe5 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,65 @@ +# Contributing + +Thank you for your interest in contributing to the Full Stack FastAPI Template! 🙇 + +## Discussions First + +For **big changes** (new features, architectural changes, significant refactoring), please start by opening a [GitHub Discussion](https://github.com/fastapi/full-stack-fastapi-template/discussions) first. This allows the community and maintainers to provide feedback on the approach before you invest significant time in implementation. + +For small, straightforward changes, you can go directly to a Pull Request without starting a discussion first. This includes: + +- Typos and grammatical fixes +- Small reproducible bug fixes +- Fixing lint warnings or type errors +- Minor code improvements (e.g., removing unused code) + +## Developing + +For detailed instructions on setting up your development environment, running the stack, linting, pre-commit hooks, and more, see the [Development Guide](development.md). + +## Pull Requests + +When submitting a pull request: + +1. Make sure all tests pass before submitting. +2. Keep PRs focused on a single change. +3. Update tests if you're changing functionality. +4. Reference any related issues in your PR description. + +## Automated Code and AI + +You are encouraged to use all the tools you want to do your work and contribute as efficiently as possible, this includes AI (LLM) tools, etc. Nevertheless, contributions should have meaningful human intervention, judgement, context, etc. + +If the **human effort** put in a PR, e.g. writing LLM prompts, is **less** than the **effort we would need to put** to **review it**, please **don't** submit the PR. + +Think of it this way: we can already write LLM prompts or run automated tools ourselves, and that would be faster than reviewing external PRs. + +### Closing Automated and AI PRs + +If we see PRs that seem AI generated or automated in similar ways, we'll flag them and close them. + +The same applies to comments and descriptions, please don't copy paste the content generated by an LLM. + +### Human Effort Denial of Service + +Using automated tools and AI to submit PRs or comments that we have to carefully review and handle would be the equivalent of a [Denial-of-service attack](https://en.wikipedia.org/wiki/Denial-of-service_attack) on our human effort. + +It would be very little effort from the person submitting the PR (an LLM prompt) that generates a large amount of effort on our side (carefully reviewing code). + +Please don't do that. + +We'll need to block accounts that spam us with repeated automated PRs or comments. + +### Use Tools Wisely + +As Uncle Ben said: + +> With great ~~power~~ **tools** comes great responsibility. + +Avoid inadvertently doing harm. + +You have amazing tools at hand, use them wisely to help effectively. + +## Questions? + +If you have questions about contributing, feel free to open a [GitHub Discussion](https://github.com/fastapi/full-stack-fastapi-template/discussions).