Multi-language code converter contribution
This commit is contained in:
@@ -0,0 +1,89 @@
|
||||
# Contributing Guidelines
|
||||
|
||||
Thank you for your interest in contributing to the CodeXchange AI project! This document provides guidelines and instructions for contributing to the project.
|
||||
|
||||
## How to Contribute
|
||||
|
||||
1. Fork the repository
|
||||
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
|
||||
3. Commit your changes (`git commit -m 'Add amazing feature'`)
|
||||
4. Push to the branch (`git push origin feature/amazing-feature`)
|
||||
5. Open a Pull Request
|
||||
|
||||
## Development Workflow
|
||||
|
||||
1. Check the issues page for open tasks or create a new issue for the feature/bug you want to work on
|
||||
2. Assign yourself to the issue
|
||||
3. Implement your changes following the best practices outlined below
|
||||
4. Write tests for your changes
|
||||
5. Update documentation as needed
|
||||
6. Submit a pull request referencing the issue
|
||||
|
||||
## Best Practices
|
||||
|
||||
### Code Style
|
||||
|
||||
- Follow existing patterns for consistency
|
||||
- Follow PEP 8 style guidelines for Python code
|
||||
- Use descriptive variable and function names
|
||||
- Add type hints for all new functions
|
||||
- Keep functions small and focused on a single responsibility
|
||||
- Use docstrings for all public functions and classes
|
||||
|
||||
### Error Handling
|
||||
|
||||
- Add comprehensive error handling
|
||||
- Use specific exception types
|
||||
- Provide helpful error messages
|
||||
- Log errors with appropriate context
|
||||
|
||||
### Logging
|
||||
|
||||
- Include detailed logging
|
||||
- Use the existing logging framework
|
||||
- Log at appropriate levels (DEBUG, INFO, WARNING, ERROR)
|
||||
- Include relevant context in log messages
|
||||
|
||||
### Documentation
|
||||
|
||||
- Update documentation for any changes
|
||||
- Document new features, configuration options, and APIs
|
||||
- Keep the README and docs directory in sync
|
||||
- Use clear, concise language
|
||||
|
||||
### Testing
|
||||
|
||||
- Write unit tests for new functionality
|
||||
- Ensure all tests pass before submitting a PR
|
||||
- Test edge cases and error conditions
|
||||
- Aim for good test coverage
|
||||
|
||||
## Pull Request Process
|
||||
|
||||
1. Ensure your code follows the style guidelines
|
||||
2. Update documentation as needed
|
||||
3. Include tests for new functionality
|
||||
4. Link the PR to any related issues
|
||||
5. Wait for code review and address any feedback
|
||||
|
||||
## Code Review
|
||||
|
||||
All submissions require review. We use GitHub pull requests for this purpose:
|
||||
|
||||
1. Reviewers will check code quality, test coverage, and documentation
|
||||
2. Address any comments or requested changes
|
||||
3. Once approved, maintainers will merge your PR
|
||||
|
||||
## Acknowledgments
|
||||
|
||||
We would like to thank the following organizations and projects that make CodeXchange AI possible:
|
||||
|
||||
- OpenAI for GPT models
|
||||
- Anthropic for Claude
|
||||
- Google for Gemini
|
||||
- DeepSeek and GROQ for their AI models
|
||||
- The Gradio team for the web interface framework
|
||||
|
||||
## License
|
||||
|
||||
By contributing to this project, you agree that your contributions will be licensed under the project's MIT License.
|
||||
Reference in New Issue
Block a user