Thank you for your interest in contributing to AnyCrawl! This document provides guidelines and instructions for contributing to the project.
By participating in this project, you agree to abide by our Code of Conduct. Please read it before contributing.
- Check if the bug has already been reported in the Issues section
- If not, create a new issue with:
- Clear and descriptive title
- Steps to reproduce
- Expected behavior
- Actual behavior
- Environment details (OS, Node.js version, etc.)
- Screenshots if applicable
- Check if the feature has already been suggested
- Create a new issue with:
- Clear and descriptive title
- Detailed description of the feature
- Use cases and benefits
- Any implementation ideas you have
- Fork the repository
- Create a new branch for your feature/fix
- Make your changes
- Write/update tests
- Update documentation
- Submit a pull request
- Clone the repository:
git clone https://github.com/any4ai/anycrawl.git
cd anycrawl- Install dependencies:
pnpm install
### Code Style
- Follow the existing code style
- Use TypeScript for all new code
- Write meaningful commit messages
- Keep functions small and focused
- Add comments for complex logic
- Use meaningful variable names
### Testing
- Write tests for new features
- Update tests for bug fixes
- Ensure all tests pass before submitting PR
- Maintain or improve test coverage
```bash
# Run tests
pnpm test
- Update README.md if needed
- Add JSDoc comments for new functions
- Update API documentation
- Add examples for new features
Follow the Conventional Commits specification:
<type>(<scope>): <description>
[optional body]
[optional footer]
Types:
- feat: New feature
- fix: Bug fix
- docs: Documentation changes
- style: Code style changes
- refactor: Code refactoring
- test: Adding/updating tests
- chore: Maintenance tasks
- Update documentation
- Add tests for new functionality
- Ensure all tests pass
- Update the CHANGELOG.md
- Request review from maintainers
- Address review comments
- Wait for approval and merge
- All PRs require at least one review
- Maintainers will review within 48 hours
- Address all review comments
- Keep PRs focused and small
- Rebase on main if needed
- Version bump
- Update CHANGELOG.md
- Create release tag
- Publish to npm
- Update documentation
- Check existing issues and discussions
- Join our community chat
- Contact maintainers
By contributing to AnyCrawl, you agree that your contributions will be licensed under the project's MIT License.