First off, thank you for considering contributing to OnboardJS!
Your help is what makes this project—and the open-source community—amazing.
We welcome all contributions: code, documentation, bug reports, feature requests, and community support.
- How Can I Contribute?
- Development Setup
- Code Style & Standards
- Pull Request Process
- Community Standards
- Questions & Support
There are many ways to help:
-
Report Bugs:
Open an issue with clear steps to reproduce. -
Suggest Features:
Open an issue with your idea and use case. -
Improve Documentation:
Fix typos, clarify explanations, or add new guides. -
Submit Code:
Fix bugs, add features, improve tests, or refactor code. -
Share Examples:
Show how you use OnboardJS in your projects.
-
Fork the repository and clone your fork:
git clone https://github.com/Somafet/onboardjs.git cd onboardjs -
Install dependencies (we recommend pnpm):
pnpm install
This will also set up git hooks automatically via husky.
-
Build all packages:
pnpm build
-
Run tests:
pnpm test
- TypeScript: All code should be written in TypeScript.
- Linting: Run
pnpm lintbefore submitting. - Formatting: Use Prettier (
pnpm format) for consistent code style. - Tests: Add or update tests for your changes.
- Commit Messages: Follow Conventional Commits format:
feat: add new featurefix: resolve bugdocs: update documentationstyle: code formatting changesrefactor: code refactoringtest: add or update testschore: maintenance tasks
- Git Hooks: Husky is configured to automatically validate commit messages using commitlint.
-
Create a branch for your change:
git checkout -b (feature or bug)/your-feature-name
-
Make your changes and commit them using conventional commit format.
-
Push to your fork and open a pull request (PR) against the
mainbranch. -
Describe your changes in the PR template.
Link related issues if applicable. -
Participate in the review process:
Be responsive to feedback and ready to make adjustments. -
Once approved, your PR will be merged!
- Be respectful and inclusive.
- Follow our Code of Conduct.
- Help others and ask for help when needed.
- GitHub Discussions: For questions, ideas, and sharing.
- GitHub Issues: For bugs and feature requests.
- Discord: (Coming soon) for real-time chat.
Thank you for helping make OnboardJS better!
We’re excited to have you as part of the community 🚀