First off, thank you for considering contributing! This project aims to improve the development workflow by integrating automated web testing directly with AI coding assistants. Your contributions can make a real difference.
This project and everyone participating in it is governed by the Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior.
There are many ways to contribute, from reporting bugs to implementing new features.
- Ensure the bug was not already reported by searching on GitHub under Issues.
- If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.
- Include details about your environment (OS, Python version, library versions).
- Open a new issue to suggest an enhancement. Provide a clear description of the enhancement and its potential benefits.
- Explain why this enhancement would be useful and provide examples if possible.
- Fork the repository on GitHub.
- Clone your fork locally:
git clone git@github.com:Ilikepizza2/GroundNG.git - Create a virtual environment and install dependencies:
cd <repository-name> python -m venv venv source venv/bin/activate # Or venv\Scripts\activate on Windows pip install -r requirements.txt playwright install --with-deps
- Create a topic branch for your changes:
git checkout -b feature/your-feature-nameorgit checkout -b fix/your-bug-fix. - Make your changes. Write clean, readable code. Add comments where necessary.
- Add tests for your changes. Ensure existing tests pass. (See Testing section below).
- Format your code (e.g., using Black):
black . - Commit your changes using a descriptive commit message. Consider using Conventional Commits.
- Push your branch to your fork on GitHub:
git push origin feature/your-feature-name. - Open a Pull Request to the
mainbranch of the original repository. Provide a clear description of your changes and link any relevant issues.
- Follow the installation steps in the README.md.
- Ensure you have a
.envfile set up with your LLM API key for running the agent components that require it. - Use the
mcp dev mcp_server.pycommand to run the server locally for testing MCP interactions.
- This project uses
pytest. Run tests using:pytest
- Please add tests for any new features or bug fixes. Place tests in a
tests/directory (if not already present). - Ensure all tests pass before submitting a pull request.
- Please follow PEP 8 guidelines.
- We recommend using Black for code formatting. Run
black .before committing. - Use clear and descriptive variable and function names.
- Add docstrings to modules, classes, and functions.
If you have questions about contributing or the project in general, feel free to open an issue on GitHub.
Thank you for your contribution!