68 lines
2.0 KiB
Markdown
68 lines
2.0 KiB
Markdown
# Contributing to AstrAI
|
||
|
||
Thank you for your interest in contributing to AstrAI! This document provides guidelines and steps for contributing.
|
||
|
||
## How to Contribute
|
||
|
||
### Reporting Issues
|
||
If you encounter a bug or have a feature request, please open an issue on GitHub. Include as much detail as possible:
|
||
- A clear description of the problem or request.
|
||
- Steps to reproduce (for bugs).
|
||
- Your environment (Python version, OS, etc.).
|
||
|
||
### Submitting Changes
|
||
1. **Fork** the repository.
|
||
2. **Clone** your fork:
|
||
```bash
|
||
git clone https://github.com/your-username/AstrAI.git
|
||
cd AstrAI
|
||
```
|
||
3. **Create a feature branch**:
|
||
```bash
|
||
git checkout -b feature/your-feature-name
|
||
```
|
||
4. **Make your changes**. Follow the code style guidelines below.
|
||
5. **Commit your changes** with a descriptive commit message:
|
||
```bash
|
||
git commit -m "Add: brief description of the change"
|
||
```
|
||
6. **Push** to your fork:
|
||
```bash
|
||
git push origin feature/your-feature-name
|
||
```
|
||
7. **Open a Pull Request** (PR) against the `main` branch of the upstream repository.
|
||
|
||
## Code Style
|
||
|
||
AstrAI uses [Ruff](https://docs.astral.sh/ruff/) for code formatting and linting. Please ensure your code is formatted before submitting.
|
||
|
||
- Run Ruff to format and lint:
|
||
```bash
|
||
ruff format .
|
||
ruff check --fix .
|
||
```
|
||
- The project uses **double quotes** for strings and **4‑space indentation** (as configured in `pyproject.toml`).
|
||
|
||
## Testing
|
||
|
||
If you add or modify functionality, please include appropriate tests.
|
||
|
||
- Run the test suite with:
|
||
```bash
|
||
pytest
|
||
```
|
||
- Ensure all tests pass before submitting your PR.
|
||
|
||
## Code Review
|
||
|
||
All submissions will be reviewed. We may request changes or discuss alternatives. Please be responsive to feedback.
|
||
|
||
## License
|
||
|
||
By contributing, you agree that your contributions will be licensed under the same [GPL-3.0 License](LICENSE) that covers the project.
|
||
|
||
---
|
||
|
||
If you have any questions, feel free to ask in the [GitHub Discussions](https://github.com/ViperEkura/AstrAI/discussions) or open an issue.
|
||
|
||
Happy contributing! |