Add contribution guidelines and update README for clarity (#1472)

- Introduced a new `contribute.md` file outlining contribution guidelines, security vulnerability reporting, branching strategy, and code standards.
- Updated `README.md` to reference the new contribution guidelines and provide clearer instructions for opening pull requests, including links to Discord and Telegram for support.
This commit is contained in:
turnoffthiscomputer
2025-12-05 12:52:21 +01:00
committed by GitHub
parent efe9ddfd52
commit 08a5466c0b
2 changed files with 62 additions and 3 deletions

View File

@@ -24,7 +24,7 @@ Currently, Self supports electronic passports, biometric ID cards following the
**Passports:** Biometric passports have the [biometric passport logo](https://en.wikipedia.org/wiki/Biometric_passport) on their front cover.
**Aadhaar:** Indian [Aadhaar](https://en.wikipedia.org/wiki/Aadhaar) cards are supported for privacy-preserving identity verification.
**Aadhaar:** Indian [Aadhaar](https://en.wikipedia.org/wiki/Aadhaar) cards are supported for privacy-preserving identity verification. Use the mAadhaar app to generate a QR code and import it into Self.
**Coverage:** Checkout our [coverage map here](http://map.self.xyz/) to see supported documents and countries.
@@ -90,11 +90,13 @@ These guides provide comprehensive context for AI-assisted development with Chat
We are actively looking for contributors. Please check the [open issues](https://github.com/selfxyz/self/issues) if you don't know where to start! We offer bounties for significant contributions.
> **Important:** Please open your pull request from the `staging` branch. Pull requests from other branches will be automatically closed.
> **Important:** Please read and follow the guidelines in [contribute.md](contribute.md) when opening your pull request.
## Contact us
[Contact us](https://t.me/selfprotocolbuilder) on telegram for feedback or questions.
- [Discord](https://discord.gg/Gq7Ka2eG) for technical support or reporting a bug.
- [Telegram's Self builder channel](https://t.me/selfprotocolbuilder) for technical questions about the sdk implementation.
- [Telegram's Self public group](https://t.me/selfxyz) for general questions and updates.
Thanks [Rémi](https://github.com/remicolin), [Florent](https://github.com/0xturboblitz), [Ayman](https://github.com/Nesopie), [Justin](https://github.com/transphorm), [Seshanth](https://github.com/seshanthS), [Nico](https://github.com/motemotech) and all other contributors for building Self.

57
contribute.md Normal file
View File

@@ -0,0 +1,57 @@
# Contributing to Self
Thank you for your interest in contributing to Self! Please read the following guidelines before submitting your contribution.
## Security Vulnerabilities
**Do not open a public PR or GitHub issue for security bugs.**
If you discover a security vulnerability, please report it responsibly by emailing **team@self.xyz**. This helps protect our users while we work on a fix. Security researchers may be eligible for a bounty.
## Ground Rules
### What We Don't Accept
- **No README-only or typo-fix PRs** — We do not accept pull requests that only fix typos or update documentation. Focus your contributions on meaningful code changes.
### Branching Strategy
- **Always branch from `dev`** — All pull requests must be opened against the `dev` branch. PRs targeting `main` or other branches will be rejected.
### For Complex Features
- **Open an issue first** — If your contribution targets core components or introduces complex features, please start by opening an issue describing your implementation plan. This allows maintainers to provide feedback before you invest significant time in development.
## Code Standards
### Naming Conventions
- **Follow the naming conventions of the subrepo** — Each workspace (`app`, `circuits`, `common`, `contracts`, `sdk/*`, etc.) may have its own conventions. Review existing code in the target workspace and match its style.
### Formatting & Linting
Before submitting your PR, ensure your code passes all formatting and linting checks:
```bash
# Format your code
yarn format
# Run linting
yarn lint
# For workspace-specific formatting (recommended)
yarn workspaces foreach -A -p -v --topological-dev --since=origin/dev run nice --if-present
```
## Pull Request Checklist
- [ ] Branch is based on `dev`
- [ ] Code follows the naming conventions of the target workspace
- [ ] `yarn lint` passes
- [ ] `yarn format` has been run
- [ ] For complex changes: issue was opened and discussed first
- [ ] Commit messages are clear and follow conventional format
## Questions?
If you're unsure about anything, feel free to open an issue for discussion before starting work.