From 57f2e8e35117e97b18f49e92066acf5531065c89 Mon Sep 17 00:00:00 2001 From: h4p-t4p Date: Fri, 24 Oct 2025 17:57:02 -0400 Subject: [PATCH 1/2] Update and rename README.md to CONTRIBUTING.md Initial draft for contributing guidelines --- CONTRIBUTING.md | 115 ++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 1 - 2 files changed, 115 insertions(+), 1 deletion(-) create mode 100644 CONTRIBUTING.md delete mode 100644 README.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..6c90b23 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,115 @@ +# Contributing to Tech for Palestine Projects + +Thank you for your interest in contributing to a Tech for Palestine (T4P) project! We welcome contributors of all backgrounds and experience levels. This guide will help you get started, understand our expectations, and ensure a positive, productive experience for everyone. + +--- + +## Table of Contents + +- [Code of Conduct](#code-of-conduct) +- [How to Contribute](#how-to-contribute) + - [Reporting Issues](#reporting-issues) + - [Submitting Pull Requests](#submitting-pull-requests) + - [Feature Requests and Proposals](#feature-requests-and-proposals) +- [Development Process](#development-process) +- [Style Guides](#style-guides) +- [Security & Privacy](#security--privacy) +- [Community & Support](#community--support) +- [License](#license) +- [Acknowledgments](#acknowledgments) + +--- + +## Code of Conduct + +All contributors must adhere to our [Code of Conduct](https://github.com/TechForPalestine/code-of-conduct). Please review it to ensure a welcoming and safe environment for everyone. + +--- + +## How to Contribute + +There are many ways to contribute: + +- Reporting bugs or issues +- Suggesting features or improvements +- Submitting pull requests (PRs) +- Improving documentation +- Helping triage issues +- Providing feedback and reviews + +### Reporting Issues + +- Search [existing issues](../../issues) before creating a new one. +- Clearly describe the issue, steps to reproduce, and expected/actual behavior. +- Add relevant labels (e.g., `bug`, `enhancement`, `help wanted`). +- If reporting a security vulnerability, please see the [Security & Privacy](#security--privacy) section below. + +### Submitting Pull Requests + +1. **Fork** the repository and create your branch from `main` (or the default branch). +2. **Write clear, concise commits**. One feature/fix per PR is ideal. +3. **Add or update tests** if applicable. +4. **Document** any new public APIs or features. +5. **Open a pull request** and describe your changes. Reference related issues if applicable. +6. **Participate in code review**. Address feedback as needed. + +> **Tip:** Look for issues labeled `good first issue` or `help wanted` if you're new! + +### Feature Requests and Proposals + +- Open an issue using the `feature request` template if available. +- Describe your proposal, motivation, and possible alternatives. +- We encourage discussion before you start implementation. + +--- + +## Development Process + +- We use [GitHub issues](../../issues) and [pull requests](../../pulls) to track work. +- CI/CD and linting may be enabled; check the repo for `.github/workflows` and linter configs. +- Please keep PRs focused and limited in scope. +- See project-specific README for setup and local development instructions. + +--- + +## Style Guides + +- Follow the coding style used in the repository (see `.editorconfig`, `.prettierrc`, or linter configuration). +- Write clear, concise commit messages and PR descriptions. +- Document code, especially public interfaces and complex logic. + +--- + +## Security & Privacy + +- Do **NOT** include secrets or sensitive data in code, issues, or PRs. +- If you find a security vulnerability, **do not open a public issue**. Instead, email [security@techforpalestine.org](mailto:security@techforpalestine.org) or follow instructions in [`SECURITY.md`](./SECURITY.md) if present. +- Contributors may use pseudonymous or anonymized accounts if they wish. + +--- + +## Community & Support + +- Join our [Discord](https://techforpalestine.org/discord-invite) to connect with maintainers and other contributors. +- Be respectful and collaborative in all interactions. +- Mentorship and pairing opportunities may be available—ask in the community! + +--- + +## License + +Unless otherwise specified, contributions are made under the repository's license. See LICENSE in each repo for details. + +--- + +## Acknowledgments + +We appreciate your commitment to advancing Palestinian liberation through technology. Your work helps build impactful, open-source tools for justice and advocacy. + +--- + +For questions, feel free to open an issue or reach out via [Discord](https://techforpalestine.org/discord-invite). + +--- + +*Adapted for the Tech for Palestine community. Thank you for contributing!* diff --git a/README.md b/README.md deleted file mode 100644 index 4b9ad89..0000000 --- a/README.md +++ /dev/null @@ -1 +0,0 @@ -# contributing-guidelines-template \ No newline at end of file From 0ed7cf099e4964941ae5521580f827ca4d6ea884 Mon Sep 17 00:00:00 2001 From: h4p-t4p Date: Fri, 24 Oct 2025 17:57:53 -0400 Subject: [PATCH 2/2] Update CONTRIBUTING.md add tools sections --- CONTRIBUTING.md | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6c90b23..b10b925 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -12,6 +12,7 @@ Thank you for your interest in contributing to a Tech for Palestine (T4P) projec - [Submitting Pull Requests](#submitting-pull-requests) - [Feature Requests and Proposals](#feature-requests-and-proposals) - [Development Process](#development-process) +- [Tools & Best Practices](#tools--best-practices) - [Style Guides](#style-guides) - [Security & Privacy](#security--privacy) - [Community & Support](#community--support) @@ -72,6 +73,31 @@ There are many ways to contribute: --- +## Tools & Best Practices + +We encourage all contributors to use the following tools and practices to ensure code quality, maintainability, and a collaborative workflow: + +### Recommended Tools + +- **Version Control**: [Git](https://git-scm.com/) (use feature branches, rebase or squash commits before merging if asked). +- **Code Editors**: [VS Code](https://code.visualstudio.com/) or your preferred editor, with recommended extensions for linting and formatting. +- **Linters & Formatters**: Respect `.editorconfig`, `.prettierrc`, `.eslintrc`, or language-specific linter configs in the repo. +- **Testing**: Use the project’s preferred testing framework (see `README.md` or `CONTRIBUTING.md` in subfolders). +- **Pre-commit Hooks**: Set up [pre-commit](https://pre-commit.com/) or other git hooks if provided. +- **CI/CD**: Monitor CI checks on your PR for failures and fix them promptly. + +### Best Practices + +- **Keep PRs Small and Focused**: Smaller changes are easier to review and merge. +- **Write Descriptive Commit Messages**: Explain what and why, not just how. +- **Code Reviews**: Be constructive and kind. Ask questions if unsure. +- **Documentation**: Update or add documentation for new features, APIs, or installation steps. +- **Stay DRY**: Avoid duplicating code or logic. +- **Accessibility and Inclusivity**: Where applicable, ensure UIs are accessible and documentation is inclusive. +- **Security**: Do not commit secrets or credentials. See [Security & Privacy](#security--privacy). + +--- + ## Style Guides - Follow the coding style used in the repository (see `.editorconfig`, `.prettierrc`, or linter configuration). @@ -98,7 +124,7 @@ There are many ways to contribute: ## License -Unless otherwise specified, contributions are made under the repository's license. See LICENSE in each repo for details. +Unless otherwise specified, contributions are made under the repository's license. See [`LICENSE`](./LICENSE) in each repo for details. ---