Thank you for your interest in contributing to CyberAi! This document provides guidelines for contributing to the project.
- Be respectful and inclusive
- Focus on constructive feedback
- Help create a positive community
- Check if the bug has already been reported in Issues
- If not, create a new issue with:
- Clear title and description
- Steps to reproduce
- Expected vs actual behavior
- Environment details
- Open an issue with the
enhancementlabel - Describe the feature and its benefits
- Provide examples of how it would work
-
Fork the repository and create a new branch
git checkout -b feature/your-feature-name
-
Make your changes
- Follow existing code style
- Add tests for new functionality
- Update documentation as needed
-
Commit your changes
- Use conventional commits format:
type(scope): description [optional body] [optional footer] - Types:
feat,fix,docs,style,refactor,test,chore
- Use conventional commits format:
-
Push to your fork
git push origin feature/your-feature-name
-
Create a Pull Request
- Provide a clear description
- Link related issues
- Wait for review
# Clone your fork
git clone https://github.com/YOUR_USERNAME/CyberAi.git
cd CyberAi
# Install dependencies
npm install
# Run tests
npm test
# Run linter
npm run lint
# Build project
npm run build- JavaScript/TypeScript: Follow the project's ESLint configuration
- Python: Follow PEP 8 style guide
- Comments: Write clear, concise comments for complex logic
- Tests: Aim for high test coverage
- Documentation: Update docs for any user-facing changes
- Write unit tests for new functions
- Write integration tests for new features
- Ensure all tests pass before submitting PR
- Include edge cases in your tests
- Update README.md for major changes
- Add JSDoc/docstring comments for functions
- Update relevant documentation in
/docs - Include examples where appropriate
- Automated checks must pass (CI, linting, tests)
- At least one maintainer review required
- All feedback must be addressed
- No merge conflicts with main branch
Feel free to ask questions by:
- Opening an issue
- Joining our community discussions
- Reaching out to maintainers
Thank you for contributing to CyberAi! 🚀