First off, thank you for considering contributing to ClipCompress! It's people like you that make ClipCompress such a great tool.
By participating in this project, you are expected to uphold our Code of Conduct: be respectful, constructive, and professional.
- Clone the repository
- Install dependencies with
npm install
- Load the extension in Chrome:
- Open Chrome and navigate to
chrome://extensions/
- Enable "Developer mode"
- Click "Load unpacked" and select the project directory
- Open Chrome and navigate to
- Make your changes and reload the extension to test
- Before submitting a bug report, please check existing issues
- Use the bug report template when creating a new issue
- Include as many details as possible:
- Chrome version
- Extension version
- Steps to reproduce
- Expected behavior
- Actual behavior
- Screenshots if applicable
- Console errors (if any)
- Use the feature request template
- Explain the problem you're trying to solve
- Be as specific as possible about your suggested solution
- Consider the impact on existing users
- Consider Chrome extension limitations and guidelines
- Fork the repository
- Create a new branch (
git checkout -b feature/amazing-feature
) - Make your changes
- Test thoroughly in Chrome
- Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
- Follow Chrome Extension Best Practices
- Use Manifest V3 standards
- Minimize permissions to only what's necessary
- Handle errors gracefully
- Test across different Chrome versions
- Follow existing code style
- Use meaningful variable and function names
- Comment your code when necessary
- Keep functions focused and concise
- Use TypeScript when possible for better type safety
- Test your changes in both development and production modes
- Verify changes work in incognito mode if applicable
- Test with different Chrome themes (light/dark)
- Ensure performance isn't degraded
Thank you for contributing!