Skip to content

Commit

Permalink
docs(contributing): Create CONTRIBUTING.md
Browse files Browse the repository at this point in the history
  • Loading branch information
aorinevo authored Oct 27, 2024
1 parent 0ad0d83 commit 0b872e4
Showing 1 changed file with 101 additions and 0 deletions.
101 changes: 101 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
# Contributing to Shepherd

Thank you for considering contributing to Shepherd! By contributing, you help improve the tool for everyone. Here are some guidelines to help you get started.

## Table of Contents
- [Code of Conduct](#code-of-conduct)
- [How to Contribute](#how-to-contribute)
- [Reporting Bugs](#reporting-bugs)
- [Suggesting Enhancements](#suggesting-enhancements)
- [Contributing Code](#contributing-code)
- [Development Setup](#development-setup)
- [Running e2e Tests](#running-e2e-tests)
- [Style Guide](#style-guide)
- [Pull Request Process](#pull-request-process)

## Code of Conduct

This project adheres to the [Contributor Covenant Code of Conduct](CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. Please report unacceptable behavior to the project maintainers.

## How to Contribute

### Reporting Bugs

If you find a bug, please create an issue and include the following:
- Steps to reproduce the bug
- Expected behavior
- Actual behavior
- Screenshots or logs if applicable

### Suggesting Enhancements

Enhancements are welcome! To suggest an enhancement:
- Check if the enhancement is already reported by searching the issues.
- Open an issue and describe:
- The current state and the enhancement you suggest.
- Why you think this enhancement would be useful.

### Contributing Code

1. Fork the repository.
2. Create a new branch (`git checkout -b feature-branch`).
3. Make your changes.
4. Commit your changes (`git commit -m 'Add new feature'`).
5. Push to the branch (`git push origin feature-branch`).
6. Open a pull request.

## Development Setup

To set up the project for development:

1. Clone your forked repository:
```sh
git clone https://github.com/<your-username>/shepherd.git
cd shepherd
```

2. Install dependencies:
```sh
npm install
```

3. Run tests:
```sh
npm run test
```

To incrementally compile the source code while developing, run:
```sh
npm run build:watch
```

## Running e2e Tests

To ensure the robustness of your contributions, end-to-end (e2e) tests are crucial. Here's how to run e2e tests in the Shepherd project:
1. Run the e2e tests:
```sh
npm run e2e-test
```
This command builds the project and runs the e2e tests. Ensure all e2e tests pass before finalizing your pull request. If you add new features, consider adding corresponding e2e tests.
## Style Guide
Follow the code style defined by the project:
- Use [ESLint](https://eslint.org/) for linting. Run `npm run lint` to check for linting errors.
- Run `npm run fix-lint` to automatically fix linting issues.
## Pull Request Process
1. Ensure your changes pass all tests and lint checks.
2. Write a clear and descriptive title and description for your pull request.
3. Link to any relevant issues.
4. Wait for the maintainers to review your pull request. They may suggest changes.
5. Make requested changes and update the pull request.
Thank you for contributing to Shepherd!
---
Make sure to review and adapt this template according to the specific practices and needs of the repository.

0 comments on commit 0b872e4

Please sign in to comment.