Skip to main content.

ContributingHow to help make LambdaLog better.

The best part of open source software is the fact that the community can help make a piece of software better. I'm one person maintaining a handful of open source projects while working a day job and raising a family; any help is greatly appreciated! Even if you're not able to submit a pull request yourself, any issues reported or features requested can help shape the future of this project.

All contributions are welcome!

Need Help?

If you are needing help with this project, the best place to ask is on Github Discussions. This is a great way to communicate with me and also receive knowledge from the community.

Reporting Bugs

I strive to keep the project up-to-date and bug-free, but sometimes a tricky bug may slip by the unit tests or a piece of functionality works differently between different versions of Node. If you know how to fix the bug, a pull request would be great, otherwise feel free to open an issue on Github.

To keep the noise level down, be sure to check the existing issues to ensure there isn't already one there.

Reporting Vulnerabilities

I take vulnerabilities seriously and want to ensure that all my projects do not contain any high risk ones. If you have found a vulnerability in this project, please contact me directly via e-mail so it can be resolved before it's publicly known. Posting a vulnerability publicly on a Github issue will give the tools needed for malicious actors start exploiting software that uses this project, so please don't do that!

Feature Requests

I welcome all feature requests and pull requests with new features for this project! This project would not be where it is today without all of the requests submitted. Follow the guidelines below before submitting a feature request.

  • While I want to make this project more flexible for everyone, I cannot accomodate every feature, especially ones that are a very specific use case. The feature should be inclusive of all users.
  • I'm trying to keep this project as lightweight as possible so features that add a ton of overhead or code and/or new dependencies will be evaluated on a case-by-case basis.
  • To submit a feature request open an issue on Github and provide as much detail as possible.

If you would like to add the feature yourself, feel free to open a pull request on Github and ensure it meets the guidelines within this page and on the Development page.

Pull Requests

If you are wanting to contribute to this project, get started by reading the Development page and applying the guidelines within this page.

Requirements

Before submitting a pull request, ensure that the following requirements are met:

  • Commit messages are in the Conventional Commits format.
  • Code is written neatly and understandably with JSDoc comments where needed.
  • There are no ESLint errors or warnings when using the .eslintrc.yml file in the repo.
  • The code runs properly in the oldest maintenance LTS version of Node and in latest active LTS version of Node.
  • Tests are written and/or updated to reflect the changes to the code. Code coverage should remain at 100%.
  • If possible, update the docs to reflect the changes.
  • Ensure the pull request description contains all the details of the changes made.

Thank You!

Seriously, thank you. Your help and contributions help keep these projects alive and really benefit the entire community. You will be added to the contributors section of the README automatically!