Contributing
Thank you for your interest in contributing to SaltyKeys.js! This project welcomes bug reports, documentation improvements, and pull requests.
Reporting bugs
Section titled “Reporting bugs”Before opening a new issue, please search existing issues to avoid duplicates.
When reporting a bug, include:
- The browser and version where the issue occurs
- The CodePen URL (if applicable)
- Steps to reproduce the problem
- Expected vs. actual behaviour
- Any console errors
Suggesting improvements
Section titled “Suggesting improvements”Feature requests and documentation improvements are welcome. Open an issue describing what you’d like to see and why it would be useful.
Development setup
Section titled “Development setup”SaltyKeys.js itself (SaltyKeys.js in the repository root) is a single file with no build step. The docs/ subdirectory is the Astro + Starlight documentation site.
Working on the library
Section titled “Working on the library”The library file is SaltyKeys.js. Edit it directly and test manually in a CodePen or browser console. There is currently no automated test suite — if you add one, that’s a welcome contribution.
Working on the docs
Section titled “Working on the docs”-
Clone the repository
Terminal window git clone https://github.com/peterbenoit/SaltyKeys.js.gitcd SaltyKeys.js -
Install docs dependencies
Terminal window cd docs && npm install -
Start the dev server
Terminal window npm run dev# → http://localhost:4321 -
Make your changes to files in
docs/src/content/docs/ -
Verify the build passes
Terminal window npm run buildThe build must complete with zero errors.
Pull request guidelines
Section titled “Pull request guidelines”- Keep changes focused — one logical change per PR
- For documentation: check spelling, test any code samples, verify links work
- For library changes: describe what the change does and why, and note any behaviour changes
- Follow the existing code style (tabs, single quotes)
- Update
CHANGELOG.mdunder[Unreleased]with a brief description of your change
Code of Conduct
Section titled “Code of Conduct”This project follows the Contributor Covenant Code of Conduct. By participating, you agree to abide by its terms.