Skip to content

✨ Contributing Guidelines

We welcome all contributions, including pull requests, bug reports, and discussions. Thank you for helping improve JANUX Authentication Gateway!

πŸ“œ Code of Conduct

Please review our Code of Conduct. All contributors are expected to follow it. Any inappropriate behavior or violations will not be tolerated.

❓ How to Get Help

See our Support Guide. Do not use GitHub issues for general questionsβ€”ask on Stack Overflow instead.

🐞 Bug Reports & Issues

🏁 DO

βœ… Check the documentation & Support Guide before opening an issue.

βœ… Search existing issues to avoid duplicates.

βœ… Provide clear detailsβ€”steps to reproduce, error logs, expected vs. actual behavior.

βœ… Use Markdown formatting (wrap code in triple backticks ```).

β›” DON'T

❌ Open duplicate issues.

❌ Comment "+1"β€”use GitHub reactions instead.

πŸ’‘ Feature Requests

  • Clearly describe the problem your feature solves.
  • Explain why it's useful for others.
  • If possible, outline a potential implementation.
  • Avoid feature creepβ€”we prioritize core functionality.

πŸš€ Submitting Pull Requests

Before submitting a PR:

βœ” Open an issue first (for large changes).

βœ” Keep PRs smallβ€”one bug fix or feature per PR.

βœ” Follow existing coding styles.

βœ” Include tests and update documentation if necessary.

βœ” Ensure CI checks pass before requesting review.

πŸ”„ PR Workflow

Step Action Required
πŸ“ Open Issue Discuss the problem/feature first.
πŸ—οΈ Fork & Code Follow project structure, add tests.
πŸ“‘ Create PR Provide a clear description.
πŸ” Code Review Address comments & improve PR.
βœ… Merge & Release After approval, maintainers merge it.

πŸ“ Writing Commit Messages

Follow these commit message rules:

βœ” Use the imperative mood β†’ ("Fix crash", not "Fixed crash").
βœ” Keep subject under 50 chars, and wrap body at 72 chars.
βœ” Explain why the change is needed, not just what it does.
βœ” Prefix relevant component β†’ (e.g., [docs], [auth], [router]).

Example:

[auth] Fix JWT token expiration issue

Updated the expiration logic to ensure tokens expire after 15 minutes.
Fixed bug where revoked tokens could still be used.
Resolves: #123

πŸ… Certificate of Origin

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

  1. The contribution was created in whole or in part by me and I have the right to submit it under the open-source license indicated in the file; or
  2. The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open-source license, and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open-source license (unless I am permitted to submit under a different license), as indicated in the file; or
  3. The contribution was provided directly to me by some other person who certified (1), (2), or (3), and I have not modified it.
  4. I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistently with this project or the open-source license(s) involved.

πŸ“Œ Summary

🎯 Report bugs & feature requests properly.

πŸš€ Follow PR & coding guidelines.

✍ Write clear commit messages.

πŸ“œ Respect the Code of Conduct.


πŸ™Œ Thank you for contributing to JANUX Authentication Gateway!