Thank you for your interest in contributing to Pulse! This document provides guidelines and instructions for contributing.
- Be respectful and inclusive
- Welcome newcomers and help them get started
- Focus on constructive criticism
- Respect differing opinions and experiences
- Check existing issues to avoid duplicates
- Use issue templates when available
- Provide clear reproduction steps
- Include relevant system information
-
Fork and Clone
git clone https://github.com/[your-username]/pulse.git cd pulse -
Create a Feature Branch
git checkout -b feature/your-feature-name
-
Make Your Changes
- Follow existing code style
- Add tests for new features
- Update documentation as needed
- Keep commits focused and atomic
-
Test Your Changes
npm test npm run lint npm run typecheck -
Submit PR
- Use a clear, descriptive title
- Reference any related issues
- Describe what changes you made and why
- Include screenshots for UI changes
- Use TypeScript for type safety
- Follow ESLint configuration
- Use Prettier for formatting
- Write self-documenting code
- Add comments only when necessary
- Write unit tests for new functions
- Add integration tests for new features
- Ensure all tests pass before submitting
- Maintain or improve code coverage
- Update README.md if adding new features
- Document new environment variables
- Add JSDoc comments for public APIs
- Update relevant docs in the docs/ folder
Follow conventional commits format:
type(scope): description
[optional body]
[optional footer]
Types: feat, fix, docs, style, refactor, test, chore
Example:
feat(voice): add natural language processing for voice commands
- Added 200+ command variations
- Improved voice recognition accuracy
- Added user feedback for commands
- All PRs require at least one review
- CI checks must pass
- Address reviewer feedback
- Squash commits if requested
- Maintainers will merge when ready
- Join our Discord community
- Ask questions in GitHub Discussions
- Tag @maintainers for urgent issues
- Check documentation and FAQs first
Contributors will be:
- Listed in our Contributors section
- Mentioned in release notes
- Given credit in commits
Thank you for helping make Pulse better!