Files
bentopdf/CONTRIBUTING.md
abdullahalam123 1cf40d9328 docs: add issue and pull request templates
Add standardized templates for GitHub issues and pull requests to improve contribution consistency. The templates guide users to provide necessary details when reporting bugs, requesting features, or submitting code changes.
2025-10-15 12:57:38 +05:30

119 lines
3.5 KiB
Markdown

# Contributing to BentoPDF
First off, thank you for considering contributing to **BentoPDF**! Your help makes this project better for everyone.
This document outlines how to contribute, report issues, and get involved in the project.
---
## 1. How to Contribute
You can contribute in several ways:
- **Reporting Bugs:** If you find a bug or unexpected behavior, please open an issue. Include steps to reproduce and any relevant screenshots or logs.
- **Feature Requests:** Suggest new features or improvements by opening an issue and describing your idea clearly.
- **Code Contributions:** Submit a pull request with new features, bug fixes, or improvements.
- **Documentation:** Help improve the README, usage examples, or guides.
- **Testing:** Help test new releases or changes to ensure stability.
---
### Issue Template
When reporting bugs, requesting features, or asking questions, please use our [issue template](.github/ISSUE_TEMPLATE/bug_feature_question.md). The template will automatically appear when you create a new issue.
**Our issue template helps you provide:**
- Clear categorization (Bug, Feature Request, or Question)
- Steps to reproduce (for bugs)
- Expected vs actual behavior
- Environment details
- Screenshots or logs
**Title Format Examples:**
- `(Bug) Text alignment incorrect on multi-line paragraphs`
- `(Feature) Add support for custom PDF metadata`
- `(Question) How to embed custom fonts?`
### Pull Request Template
When submitting code contributions, please use our [pull request template](.github/pull_request_template.md). The template will automatically appear when you create a new PR.
**Key requirements:**
- Link to the related issue (e.g., `Fixes #123`)
- Describe the type of change (bug fix, feature, breaking change)
- Explain how you tested your changes
- Complete the checklist before submitting
## 2. Getting Started with Code Contributions
1. **Fork the Repository**
```bash
git clone https://github.com/alam00000/bentopdf.git
cd bento-pdf
npm install
```
2. **Create a New Branch**
```bash
git checkout -b feature/my-new-feature
```
3. **Make Your Changes**
- Follow the code style and conventions used in the project.
- Add comments where necessary.
- Update or add tests if applicable.
4. **Run Tests**
```bash
npm run test
```
5. **Commit Your Changes**
```bash
git add .
git commit -m "Add a meaningful commit message"
```
6. **Push and Submit a Pull Request**
```bash
git push origin feature/my-new-feature
```
- Open a pull request on GitHub and provide a clear description of your changes.
---
## 3. Code Style
- Follow the existing TypeScript and JavaScript conventions.
- Use `camelCase` for variables and functions.
- Keep lines reasonably short and readable.
- Comment complex logic for clarity.
---
## 4. Issues and Pull Requests
- Make sure your PR is focused and addresses a single issue or feature.
- Reference related issues in your PR description (e.g., `Closes #12`).
- Be responsive to feedback and make requested changes promptly.
---
## 5. Reporting Security Issues
If you discover a security vulnerability, please **do not** open a public issue. Instead, contact the project maintainer directly at:
**Email:** [contact@bentopdf.com](mailto:contact@bentopdf.com)
---
## 6. Code of Conduct
All contributors are expected to follow the Code of Conduct. Be respectful and considerate in all communications.
---
Thank you for helping make **BentoPDF** a better library for everyone!