-
-
Notifications
You must be signed in to change notification settings - Fork 38
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #76 from mahendra3399/contribution-guide
updated CONTRIBUTING.md file
- Loading branch information
Showing
1 changed file
with
179 additions
and
57 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,78 +1,200 @@ | ||
# Contributing | ||
# Contributing Guidelines 🤝 | ||
|
||
When contributing to this repository, please first discuss the change you wish to make via issue or any other method with the owners of this repository before making a change. | ||
|
||
## Pull Request Process | ||
|
||
1. Clone the repositoriy | ||
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) | ||
| ||
[![Open Source? Yes!](https://badgen.net/badge/Open%20Source%20%3F/Yes%21/blue?icon=github)](https://github.com/Naereen/badges/) | ||
|
||
2. edit the code according to the issue | ||
|
||
3. make a pull request after commiting | ||
# Contributing to Board | ||
|
||
### Our Pledge | ||
Thank you for considering contributing to Black Board! We welcome contributions from the community and are excited to see what you can bring to the project. | ||
|
||
In the interest of fostering an open and welcoming environment, we as | ||
contributors and maintainers pledge to making participation in our project and | ||
our community a harassment-free experience for everyone, regardless of age, body | ||
size, disability, ethnicity, gender identity and expression, level of experience, | ||
nationality, personal appearance, race, religion, or sexual identity and | ||
orientation. | ||
## Table of Contents | ||
|
||
### Our Standards | ||
1. [Code of Conduct](#code-of-conduct) | ||
2. [How to Contribute](#how-to-contribute) | ||
3. [Creating Issues](#creating-issues) | ||
4. [Writing Better Comments for Issue Assignment](writing-better-comments-for-issue-assignment) | ||
5. [Setting Up Your Development Environment](#setting-up-your-development-environment) | ||
6. [Making Changes](#making-changes) | ||
7. [Submitting Your Changes](#submitting-your-changes) | ||
8. [How to Create Pull Requests](#how-to-create-pull-requests) | ||
9. [Time Limit for Assigned Issue](#time-limit-for-assigned-issues) | ||
10. [Gathering Contributor Information](#gathering-contributor-information) | ||
11. [Style Guide](#style-guide) | ||
12. [Testing](#testing) | ||
13. [Documentation](#documentation) | ||
14. [Contact](#contact) | ||
|
||
Examples of behavior that contributes to creating a positive environment | ||
include: | ||
## Code of Conduct | ||
|
||
- Using welcoming and inclusive language | ||
- Being respectful of differing viewpoints and experiences | ||
- Gracefully accepting constructive criticism | ||
- Focusing on what is best for the community | ||
- Showing empathy towards other community members | ||
Please note that this project is released with a [Contributor Code of Conduct](CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms. | ||
|
||
Examples of unacceptable behavior by participants include: | ||
## Our Pledge | ||
|
||
- The use of sexualized language or imagery and unwelcome sexual attention or | ||
advances | ||
- Trolling, insulting/derogatory comments, and personal or political attacks | ||
- Public or private harassment | ||
- Publishing others' private information, such as a physical or electronic | ||
address, without explicit permission | ||
- Other conduct which could reasonably be considered inappropriate in a | ||
professional setting | ||
We pledge to foster an open, welcoming environment free from harassment for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, experience level, nationality, personal appearance, race, religion, or sexual identity and orientation. | ||
|
||
### Our Responsibilities | ||
## Our Standards | ||
Positive behaviors include: | ||
|
||
Project maintainers are responsible for clarifying the standards of acceptable | ||
behavior and are expected to take appropriate and fair corrective action in | ||
response to any instances of unacceptable behavior. | ||
- Using welcoming and inclusive language. | ||
- Respecting different viewpoints. | ||
- Accepting constructive feedback gracefully. | ||
- Focusing on what's best for the community. | ||
- Demonstrating empathy and kindness. | ||
|
||
Project maintainers have the right and responsibility to remove, edit, or | ||
reject comments, commits, code, wiki edits, issues, and other contributions | ||
that are not aligned to this Code of Conduct, or to ban temporarily or | ||
permanently any contributor for other behaviors that they deem inappropriate, | ||
threatening, offensive, or harmful. | ||
Examples of unacceptable behavior: | ||
|
||
### Scope | ||
- Sexualized language, imagery, or unwelcome advances. | ||
- Trolling, insults, or derogatory comments. | ||
- Harassment, whether public or private. | ||
- Publishing private information without permission. | ||
- Any behavior that creates an unsafe environment. | ||
|
||
This Code of Conduct applies both within project spaces and in public spaces | ||
when an individual is representing the project or its community. Examples of | ||
representing a project or community include using an official project e-mail | ||
address, posting via an official social media account, or acting as an appointed | ||
representative at an online or offline event. Representation of a project may be | ||
further defined and clarified by project maintainers. | ||
## Our Responsibility | ||
|
||
### Enforcement | ||
Maintainers are responsible for clarifying acceptable behavior and are empowered to take corrective actions in response to any misconduct. | ||
|
||
Instances of abusive, harassing, or otherwise unacceptable behavior may be | ||
reported by contacting the project maintainer at https://github.com/DhanushNehru. All | ||
complaints will be reviewed and investigated and will result in a response that | ||
is deemed necessary and appropriate to the circumstances. The project team is | ||
obligated to maintain confidentiality with regard to the reporter of an incident. | ||
Further details of specific enforcement policies may be posted separately. | ||
## How to Contribute | ||
|
||
Project maintainers who do not follow or enforce the Code of Conduct in good | ||
faith may face temporary or permanent repercussions as determined by other | ||
members of the project's leadership. | ||
**1. Fork the Repository** | ||
|
||
## THANK YOU :D | ||
Fork the repository to your own GitHub account by clicking the "Fork" button on the top right of the repository page. | ||
|
||
**2. Clone the Repository** | ||
|
||
Clone the forked repository to your local machine: | ||
|
||
```bash | ||
git clone https://github.com/your-username/Board.git | ||
cd Board | ||
``` | ||
|
||
**3. Create a Branch** | ||
|
||
Create a new branch for your feature or bug fix: | ||
|
||
```bash | ||
git checkout -b feature/your-feature-name | ||
``` | ||
## Creating Issues | ||
|
||
If you've encountered a bug or have a feature request, you can create an issue in the repository: | ||
|
||
**1. Clear and Concise Title:** Use a descriptive title that summarizes the problem or feature request. | ||
|
||
**2. Detailed Explanation:** Provide a clear description of the problem, steps to reproduce (if applicable), and expected behavior. For feature requests, explain the purpose and benefits. | ||
|
||
**3. Attachments:** Whenever possible, include screenshots, logs, or code snippets that help explain the issue. | ||
|
||
**4. Use Templates:** If issue templates are provided, please use them to ensure that all necessary information is included. | ||
|
||
This information will help the maintainers understand the context and prioritize the issue appropriately. | ||
|
||
## Writing Better Comments for Issue Assignment | ||
When requesting an issue assignment: | ||
|
||
**1. Clearly Describe Your Approach:** Briefly explain how you intend to solve the issue or add the feature. This helps maintainers assess whether your approach aligns with the project's needs. | ||
|
||
**2. Be Thoughtful and Constructive:** Use professional language, be polite, and ensure that your comments contribute to a positive and collaborative environment. | ||
|
||
**3. Explain Your Availability:** Let the maintainers know if you anticipate any delays in solving the issue, so the maintainers can manage the project timeline efficiently. | ||
|
||
|
||
## Setting Up Your Development Environment | ||
|
||
1. Ensure you have Node.js and npm installed. You can download them from [Node.js](https://nodejs.org/). | ||
2. Install the project dependencies: | ||
|
||
```bash | ||
npm install | ||
``` | ||
|
||
3. Start the development server: | ||
|
||
```bash | ||
npm start | ||
``` | ||
|
||
This will start the development server and you can view the application in your browser at `http://localhost:3000`. | ||
|
||
## Making Changes | ||
|
||
1. Make your changes to the codebase. Ensure that your code follows the project's coding standards. | ||
2. If you are adding a new feature, consider adding tests to cover your changes. | ||
3. Ensure your code passes all existing tests. | ||
|
||
## Submitting Your Changes | ||
|
||
### 1. Commit Changes | ||
|
||
Commit your changes with a descriptive commit message: | ||
|
||
```bash | ||
git add . | ||
git commit -m "Add feature: your feature description" | ||
``` | ||
|
||
### 2. Push Changes | ||
|
||
Push your changes to your forked repository: | ||
|
||
```bash | ||
git push origin feature/your-feature-name | ||
``` | ||
## How to Create Pull Requests | ||
To submit your work: | ||
|
||
**1. Fork the Repository:** Ensure your repository is forked and you have created a new branch for your work. | ||
|
||
**2. Make Changes and Test:** Make your changes on the new branch, then ensure that everything is working as expected. | ||
|
||
**3. Maintain Clean Commit History:** Organize your commits meaningfully and squash or rebase them if necessary. Ensure each commit has a clear and descriptive message explaining the changes. | ||
|
||
**4. Link to the Issue:** In the PR description, link the issue you're addressing (if applicable) by referencing the issue number. | ||
|
||
**5. Submit PR:** Go to the original repository and create a pull request from your forked repository. Provide a clear and descriptive title and description for your pull request. | ||
|
||
**6. Complete any Requested Changes:** If maintainers request changes to your PR, complete them as soon as possible. | ||
|
||
## Time Limit for Assigned Issues | ||
Once an issue is assigned, contributors will have 1-2 days to work on the issue and submit a pull request. | ||
|
||
- If you're unable to meet this deadline, please communicate with the maintainers as soon as possible to request an extension. | ||
- If you fail to submit the PR or communicate delays within the specified timeframe, the issue may be reassigned to someone else. | ||
|
||
## Gathering Contributor Information | ||
To properly acknowledge the efforts of all contributors: | ||
|
||
**1. Collect Information:** I will ensure each contributor’s name, GitHub profile link, and the details of their contributions (e.g., bug fixes, features, etc.) are accurately included. | ||
|
||
**2. Markdown Syntax for Formatting:** Contributors will be listed using markdown to create a clean and consistent layout. If appropriate, sections will be created for profiles, images, and descriptions of their contributions. | ||
|
||
**3. Sorting by Contribution:** Contributors may be sorted based on role or type of contribution (e.g., bug fix, feature implementation) for better readability. | ||
|
||
The expected outcome is a well-organized `CONTRIBUTORS.md` file that acknowledges every contributor's effort while maintaining clarity for visitors of the repository. | ||
|
||
## Style Guide | ||
|
||
- **Code Formatting**: Ensure your code is properly formatted. We use Prettier for code formatting. You can format your code by running: | ||
|
||
```bash | ||
npm run format | ||
``` | ||
## Testing | ||
Before submitting your changes, make sure that all tests pass. If you’re adding new features, write corresponding tests as well. | ||
|
||
## Documentation | ||
|
||
Update the documentation as necessary for any changes, including the README.md and other relevant files. | ||
|
||
## Contact | ||
|
||
For questions or assistance, feel free to open an issue or contact the maintainers. | ||
|
||
Thank you for contributing to Board! | ||
|
||
|
||
|