Skip to content

Commit

Permalink
Merge pull request #76 from mahendra3399/contribution-guide
Browse files Browse the repository at this point in the history
updated CONTRIBUTING.md file
  • Loading branch information
DhanushNehru authored Oct 10, 2024
2 parents 5e003f1 + 7a78174 commit 5763c38
Showing 1 changed file with 179 additions and 57 deletions.
236 changes: 179 additions & 57 deletions CONTRIBUTING.md
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!



0 comments on commit 5763c38

Please sign in to comment.