Skip to content

Commit 4850869

Browse files
author
Reshad Ahammed Ayon
authored
Docs: Add CONTRIBUTING.md for contribution guidelines (#402)
* docs: Add CONTRIBUTING.md file * docs: Link to dedicated documentation repository
1 parent 7072f4c commit 4850869

File tree

1 file changed

+110
-0
lines changed

1 file changed

+110
-0
lines changed

CONTRIBUTING.md

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
# Contributing to OpenBangla Keyboard (OBK)
2+
3+
Thank you for your interest in contributing to OpenBangla Keyboard! We welcome contributions of all kinds, whether it's code, documentation, bug reports, feature requests, or helping fellow contributors.
4+
5+
Please take a moment to review this guide before submitting your contribution.
6+
7+
## Code of Conduct
8+
9+
We expect all contributors to adhere to our [Code of Conduct](CODE_OF_CONDUCT.md). Please read it carefully and ensure you understand and agree to its terms.
10+
11+
## How Can I Contribute?
12+
13+
There are many ways you can contribute to this project:
14+
15+
### Reporting Bugs
16+
17+
If you encounter a bug, please help us by submitting a detailed issue. When reporting a bug, please include:
18+
19+
- **A clear and descriptive title** for the issue.
20+
- **Steps to reproduce the bug** as precisely as possible.
21+
- **What you expected to happen** instead of the actual outcome.
22+
- **Any relevant environment information**, such as your operating system, software versions, and any specific configurations.
23+
- **If possible, include any error messages or screenshots** that might be helpful.
24+
25+
### Suggesting Enhancements
26+
27+
We are always open to suggestions for new features and improvements. When suggesting an enhancement, please consider:
28+
29+
- **Clearly describe the proposed enhancement** and its benefits.
30+
- **Explain the use case** and why you believe this enhancement would be valuable.
31+
- **If possible, suggest how the enhancement might be implemented.**
32+
- **Check if a similar feature request already exists** before creating a new one.
33+
34+
### Contributing Code
35+
36+
If you'd like to contribute code, please follow these steps:
37+
38+
1. **Fork the repository** on GitHub.
39+
2. **Clone your fork** to your local machine:
40+
41+
```bash
42+
git clone --recursive https://github.com/OpenBangla/OpenBangla-Keyboard.git
43+
cd OpenBangla-Keyboard
44+
```
45+
46+
3. **Create a new branch** for your changes. Choose a descriptive name:
47+
48+
```bash
49+
git checkout -b feature/your-feature-name
50+
# or
51+
git checkout -b bugfix/your-bug-fix
52+
```
53+
54+
4. **Make your changes** and ensure your code follows the project's coding style (if any).
55+
5. **Add your changes** to Git:
56+
57+
```bash
58+
git add .
59+
```
60+
61+
6. **Commit your changes** with a clear and concise commit message. Follow these guidelines for commit messages:
62+
63+
- Separate the subject from the body with a blank line.
64+
- Try limiting the subject line to 50 characters.
65+
- Do not end the subject line with a period.
66+
- Use the imperative mood ("Fix bug", "Add feature").
67+
- Optionally, provide a more detailed body for context.
68+
69+
```bash
70+
git commit -m "Add feature: Implement bangla spell checker"
71+
```
72+
73+
7. **Push your branch** to your fork on GitHub:
74+
75+
```bash
76+
git push origin your-feature-name
77+
```
78+
79+
8. **Create a Pull Request (PR)** through the GitHub website. When creating a PR:
80+
81+
- Provide a clear and descriptive title for your PR.
82+
- In the description, explain the changes you've made and the problem they solve (if applicable).
83+
- Reference any related issues in the PR description (e.g., `Closes #123`, `Fixes #456`).
84+
85+
### Contributing Documentation
86+
87+
Good documentation is crucial! We have a dedicated repository for OpenBangla Keyboard documentation: https://github.com/OpenBangla/manual. Most documentation contributions should be made there, unless it's something that is related to this repository. If you'd like to contribute to the documentation:
88+
89+
- **Submit issues** for any unclear or incorrect documentation you find.
90+
- **Create pull requests** to fix typos, improve clarity, or add new documentation. Follow the same Git workflow as contributing code. Ensure your documentation changes are well-formatted (e.g., using AsciiDoc or Markdown).
91+
92+
`Note: The contribution guidelines in the OpenBangla/manual repository are the preferred and prioritized source for documentation contributions.`
93+
94+
## Pull Request Guidelines
95+
96+
To ensure your pull request is reviewed and merged efficiently, please follow these guidelines:
97+
98+
- **Target your pull request to the `develop` branch** (or the designated development branch), not the `main` branch.
99+
- **Keep your PR focused** on a single issue or feature. Avoid making unrelated changes in the same PR.
100+
- **Ensure your code builds and passes all tests** (if applicable).
101+
- **Follow the project's coding style** and conventions.
102+
- **Write clear and concise commit messages.**
103+
- **Provide a detailed description** in your pull request explaining your changes and their purpose.
104+
- **Be responsive to feedback** during the code review process.
105+
106+
## Questions?
107+
108+
If you have any questions about contributing, feel free to ask in [GitHub Discussions](https://github.com/OpenBangla/OpenBangla-Keyboard/discussions)!
109+
110+
Thank you again for your contribution! We appreciate your time and effort in making OBK better.

0 commit comments

Comments
 (0)