Contributing ============ Thank you for your interest in contributing to ``fastapi-async-storages``! We welcome contributions of all kinds; whether code, documentation, bug reports, or ideas. Contribution Guide ------------------ How to Contribute ~~~~~~~~~~~~~~~~~ 1. **Check the roadmap and open issues** See what’s planned or in progress to avoid duplication and align your efforts. 2. **Fork the repository and create a feature branch** Create your own copy of the project to work on. Use a descriptive name for your branch, e.g., ``feature/async-gcs-backend``. 3. **Write clear, concise code and documentation** Follow existing style and patterns. Include tests for new features or bug fixes. 4. **Open a pull request (PR)** Provide a detailed description of your changes, related issues, and any testing you performed. 5. **Respond to review feedback** We may ask for clarifications, improvements, or changes before merging. Coding Guidelines ~~~~~~~~~~~~~~~~~ - Write asynchronous code following Python’s async/await conventions. - Ensure compatibility with FastAPI and `SQLAlchemy `_/`SQLModel `_ async patterns. - Add type hints for functions and methods. - Document public APIs and complex internal logic clearly. - Adhere to `PEP 8 style `_ guidelines for Python code. Reporting Issues ~~~~~~~~~~~~~~~~~ - Use the issue tracker to report bugs, suggest enhancements, or ask questions. - Provide clear reproduction steps, error messages, and environment details. Community Conduct ~~~~~~~~~~~~~~~~~ - Be respectful and considerate to all contributors. - Follow inclusive language practices. - Contributions must comply with the project’s license. Thank you for helping make ``fastapi-async-storages`` better for everyone! We look forward to your contributions and collaboration.