Getting Started
Fork the Repository
Fork duvanleandro/Chimbot on GitHub
Development Workflow
1. Create a Branch
feature/add-music-commands- New featuresfix/spam-detection-bug- Bug fixesdocs/update-readme- Documentation updatesrefactor/cleanup-commands- Code refactoring
2. Make Your Changes
Editmain.py to implement your changes. Follow the existing code structure:
main.py
3. Test Your Changes
- Manual Testing
- Code Review
Run the bot in a test Discord server:Test all affected functionality:
- Commands work as expected
- Error handling works properly
- No unexpected crashes or errors
- Permissions are respected
4. Commit Your Changes
Follow conventional commit format:5. Push and Create Pull Request
- Clear description of changes
- Reasoning for the change
- Testing steps performed
- Any breaking changes
Code Style Guidelines
Python Style
Follow PEP 8 with these conventions:Discord.py Conventions
Configuration Constants
Adding New Features
Adding a New Command
Adding a New Event Handler
main.py
Adding AI Functionality
main.py
Common Contributions
Bug Fixes
Found a bug? Check existing issues, create a new one if needed, then submit a fix.
New Commands
Add useful commands that enhance bot functionality. Follow the command structure.
Documentation
Improve code comments, update README, or enhance these docs.
Refactoring
Improve code quality, performance, or organization without changing functionality.
Testing Checklist
Before submitting your PR, verify:- Bot starts without errors
- New features work as expected
- Existing features still work (no regressions)
- Error cases are handled gracefully
- No hardcoded secrets or tokens
- Code follows existing style
- Comments explain complex logic
- Required permissions are documented
- Help text is updated if adding commands
Pull Request Template
When creating a PR, include:Best Practices
Error Handling
Always include error handling:Logging
Use print statements for important events:Resource Cleanup
Clean up resources properly:Getting Help
GitHub Issues
Report bugs or request features
Discord.py Docs
Official discord.py documentation
Groq Documentation
Groq AI API documentation
Architecture Guide
Understanding ChimBot’s structure
Code of Conduct
- Be respectful and constructive in discussions
- Follow Discord’s Terms of Service
- Don’t include malicious code
- Respect existing code style and patterns
- Test your changes thoroughly before submitting
- Document breaking changes clearly