Common Functional Programming Algebraic data types for JavaScript that is compatible with most modern browsers and Deno.

Contributor guidelines

What do I need to know to help?

If you are looking to help to with a code contribution our project uses JavaScript to run on Deno and modern browsers. If you don't feel ready to make a code contribution yet, no problem! You can also check out the issues.

Never made an open source contribution before? Wondering how contributions work in the in our project? Here's a quick rundown!

  1. Find an issue that you are interested in addressing, or a feature that you would like to add;
  2. Fork the repository associated with the issue to your local GitHub organization. This means that you will have a copy of the repository under github-username/repository-name;
  3. Clone the repository to your local machine using git clone;
  4. Create a new branch for your fix using git checkout -b branch-name-here. The preferred pattern is to prefix the branch name, i.e.: fix/[issue-number|*], document/* or, implement/[issue-number|*];
  5. Make the appropriate changes for the issue you are trying to address, or the feature that you want to implement;
  6. Use git to commit your changes with a descriptive message, you can refer to this article to learn how to write a good commit message;
  7. Push the changes to the remote repository using git push origin branch-name-here;
  8. Submit a pull request to the upstream repository;
  9. Title the pull request with a short description of the changes made and the issue or bug number associated with your change. For example, you can title an issue like so "Add log messages #4352";
  10. In the description of the pull request, explain the changes that you made, any issues you think exist with the pull request you made, and any questions you have for the maintainer. It's OK if your pull request is not perfect (no pull request is), the reviewer will be able to help you fix any problems and improve it!
  11. Wait for the pull request to be reviewed by a maintainer;
  12. Make changes to the pull request if the reviewing maintainer recommends them.
  13. Celebrate your success after your pull request is merged!

Where can I go for help?

If you need help, you can ask questions on Discord.

What does the Code of Conduct mean for me?

Our Code of Conduct means that you are responsible for treating everyone on the project with respect and courtesy regardless of their identity. If you are the victim of any inappropriate behavior or comments as described in our Code of Conduct, we are here for you and will do the best to ensure that the abuser is reprimanded appropriately, per our code.