Thank you for your interest in contributing to Pepr! We welcome all contributions and are grateful for your help. This guide outlines how to get started with contributing to this project.
Table of Contents
Code of Conduct
Please follow our Code of Conduct to maintain a respectful and collaborative environment.
Getting Started
- Repository: https://github.com/defenseunicorns/pepr/
- npm package: https://www.npmjs.com/package/pepr
- Required Node version:
>=18.0.0
Setup
- Fork the repository.
- Clone your fork locally:
git clone https://github.com/your-username/pepr.git
. - Install dependencies:
npm ci
. - Create a new branch for your feature or fix:
git checkout -b my-feature-branch
.
Submitting a Pull Request
- Create an Issue: For significant changes, please create an issue first, describing the problem or feature proposal. Trivial fixes do not require an issue.
- Commit Your Changes: Make your changes and commit them. All commits must be signed.
- Run Tests: Ensure that your changes pass all tests by running
npm test
. - Push Your Branch: Push your branch to your fork on GitHub.
- Create a Pull Request: Open a pull request against the
main
branch of the Pepr repository. Please make sure that your PR passes all CI checks.
PR Requirements
- PRs must be against the
main
branch. - PRs must pass CI checks.
- All commits must be signed.
- PRs should have a related issue, except for trivial fixes.
Coding Guidelines
Please follow the coding conventions and style used in the project. Use ESLint and Prettier for linting and formatting:
- Check formatting:
npm run format:check
- Fix formatting:
npm run format:fix
Running Tests
Run Tests Locally
⚠️ Warning: Be cautious when creating test cases in
journey/
!
- Test cases that capture end-to-end/journey behavior are usually stored in pepr-excellent-examples or run as a Github workflow (
.github/workflows
).- Journey tests established in
journey/
are from an earlier time in project history.
- Run all tests:
npm test
Test a Local Development Version
- Run
npm test
and wait for completion. - Change to the test module directory:
cd pepr-test-module
. - You can now run any of the
npx pepr
commands.
Contact
For any questions or concerns, please open an issue on GitHub or contact the maintainers.