diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 7191bd940..df6914be2 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,14 +1,24 @@ # Contributing to Paseo -Paseo is an opinionated product maintained by one person. +Paseo is an opinionated product maintained by one person right now. -I read every issue and PR myself, and I am selective about what contributions I accept. +The product covers a lot of surface: mobile, desktop, web, the daemon, the relay, and both self-hosted and hosted setups. -Good ideas still need to fit the shape of the product: a PR can be technically correct and still not belong in Paseo. +Contributing takes a lot of context that is very hard to transfer. That's why product, design, architecture, and workflow decisions are currently all made by the maintainer. -Core product, design, architecture, and workflow changes are not accepted. +## Becoming a maintainer -Follow these rules if you want your PR to be merged: +There's no formal process to become a maintainer, if you consistently contribute and help out, you'll become one. + +Here's the progression: + +1. Get involved in the community: answer questions in Discord and on GitHub +2. Triage bugs: replicate and help fix them +3. Work on maintainer-approved features + +## Pull requests + +✅ Will be accepted - Keep it to one focused change - Link to an issue @@ -18,15 +28,25 @@ Follow these rules if you want your PR to be merged: - UI changes need screenshots or video for every affected platform: iOS, Android, desktop, and web - If you only tested one platform, say that clearly -Your PR will be closed if you do any of these: +⛔️ Will be rejected - Bundle unrelated changes - Fail basic checks like typecheck, formatting or linting -- Make product, design, or architecture changes without prior discussion +- Add a feature or design change that wasn't discussed first - Submit no evidence of testing - Skip the linked issue - Clearly fully AI-generated PR +## Requesting features + +If you need a feature implemented, create a Github issue or a thread in Discord. + +Explain the problem you want to solve: your use case, where Paseo falls short today, and the flow you expect. + ## AI assistance -AI in the loop is fine. The bar is whether _you_ tested the change and can explain why it works. A confident wall of AI prose with no evidence of testing is a red flag and will get closed. +Using AI to help write code is fine, but you must: + +- Ensure your agents read the docs +- Understand the code you submit +- Review and test the code yourself