Contributing to PINA#
First off, thanks for taking the time to contribute to PINA! 🎉 Your help makes the project better for everyone. This document outlines the process for contributing, reporting issues, suggesting features, and submitting pull requests.
Table of Contents#
How to Contribute#
You can contribute in several ways:
Reporting bugs
Suggesting features/enhancements
Submitting fixes or improvements via Pull Requests (PRs)
Improving documentation
We encourage all contributions, big or small!
Reporting Bugs#
If you find a bug, please open an issue and include:
A clear and descriptive title
Steps to reproduce the problem
What you expected to happen
What actually happened
Any relevant logs, screenshots, or error messages
Environment info (OS, Python version, dependencies, etc.)
Suggesting Enhancements#
We welcome new ideas! If you have an idea to improve PINA:
Check the issue tracker or the discussions to see if someone has already suggested it.
If not, open a new issue describing: - The enhancement you’d like - Why it would be useful - Any ideas on how to implement it (optional but helpful)
If you are not sure about (something of) the enhancement, we suggest opening a discussion to collaborate on it with the PINA community.
Pull Request Process#
Before submitting a PR:
Ensure there’s an open issue related to your contribution (or create one).
Fork the repository and create a new branch from
master
:git checkout -b feature/my-feature
Make your changes: - Write clear, concise, and well-documented code - Add or update tests where appropriate - Update documentation if necessary
Verify your changes by running tests:
pytest
Properly format your code. If you want to save time, simply run:
bash code_formatter.sh
Submit a pull request with a clear explanation of your changes and reference the related issue if applicable.
Pull Request Checklist
Code follows the project’s style guidelines
Tests have been added or updated
Documentation has been updated if necessary
Pull request is linked to an open issue (if applicable)
Code Style & Guidelines#
Follow PEP8 for Python code.
Use descriptive commit messages (e.g.
Fix parser crash on empty input
).Write clear docstrings for public classes, methods, and functions.
Keep functions small and focused; do one thing and do it well.
Community Standards#
By participating in this project, you agree to abide by our Code of Conduct. We are committed to maintaining a welcoming and inclusive community.