How to Contribute
There are several ways to contribute to this project:- Bug fixes and improvements: Open an issue first (optional but helpful), then submit a pull request
- New experiments: Open an issue with the Experiment idea template to discuss before implementing
- Documentation: Fixes and improvements to README or CONTRIBUTING are always welcome via PR
By participating in this project, you agree to abide by our Code of Conduct.
Development Setup
Each experiment is fully independent with its own dependencies. Follow these steps to set up your development environment:Fork and clone the repository
Fork the cloudflare-experiments repository and clone it to your local machine.
Pull Request Process
Follow these steps when submitting a pull request:Create a branch
Create a branch from
main with a descriptive name:fix/whereami-typofor bug fixesfeat/new-experiment-namefor new experiments
Make focused changes
Make your changes in one experiment only per PR when possible. Keep PRs focused and easy to review.
Test deployment
Ensure the experiment still runs and deploys:Run this from the experiment’s directory.
Add new experiments to the table
If adding a new experiment, add a row to the experiments table in the root README.md and ensure the experiment follows the repository structure.
Open a pull request
Open a pull request against
main with a clear title and description. Fill in the PR template.Community Guidelines
Our Pledge
We pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, caste, color, religion, or sexual identity and orientation.Our Standards
Examples of behavior that contributes to a positive environment:- Using welcoming and inclusive language
- Being respectful of differing viewpoints and experiences
- Gracefully accepting constructive criticism
- Focusing on what is best for the community
- Showing empathy towards other community members
- The use of sexualized language or imagery, and sexual attention or advances of any kind
- Trolling, insulting or derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others’ private information without explicit permission
- Other conduct which could reasonably be considered inappropriate in a professional setting
Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to the project maintainers. All complaints will be reviewed and investigated promptly and fairly.Getting Help
Where can I ask questions?
Where can I ask questions?
Open a Discussion for questions or ideas about the project.
How do I report bugs?
How do I report bugs?
Use Issues for bugs or feature requests. Provide as much detail as possible.
Can I contribute without writing code?
Can I contribute without writing code?
Yes! Documentation improvements, bug reports, feature suggestions, and helping others in Discussions are all valuable contributions.
What if my PR isn't accepted?
What if my PR isn't accepted?
Don’t be discouraged! We appreciate all contributions. If a PR isn’t accepted, maintainers will explain why and may suggest alternatives.
Next Steps
- Review the Code Standards to understand the project structure
- Learn how to add new experiments
- Check out existing experiments in the repository