Skip to content

Contributing to Polymathy

Thank you for your interest in contributing to Polymathy! This guide will help you get started.

Ways to Contribute

  • :material-bug:{ .lg .middle } Report Bugs


    Found a bug? Open an issue with reproduction steps

  • :material-lightbulb:{ .lg .middle } Suggest Features


    Have an idea? Start a discussion or open a feature request

  • :material-code-braces:{ .lg .middle } Submit Code


    Fix bugs or implement features via pull requests

  • :material-file-document:{ .lg .middle } Improve Docs


    Help make our documentation better

Quick Start

  1. Fork the repository
  2. Clone your fork
  3. Create a feature branch
  4. Make your changes
  5. Submit a pull request
# Fork via GitHub, then:
git clone https://github.com/YOUR-USERNAME/polymathy.git
cd polymathy
git checkout -b feature/your-feature-name
# Make changes...
git commit -m "Add your feature"
git push origin feature/your-feature-name
# Open a PR on GitHub

What We're Looking For

High Priority

  • Bug fixes with test coverage
  • Performance improvements
  • Documentation improvements
  • Test coverage expansion

Welcome Contributions

  • New features (discuss first)
  • Code refactoring
  • CI/CD improvements
  • Example code

Before You Start

For Bug Fixes

  1. Check existing issues
  2. Create an issue if none exists
  3. Reference the issue in your PR

For New Features

  1. Open a discussion or issue first
  2. Wait for feedback from maintainers
  3. Proceed only after approval

Pull Request Process

  1. Create focused PRs - One feature/fix per PR
  2. Write tests - Cover new code with tests
  3. Update docs - Document new features
  4. Follow style - Run cargo fmt and cargo clippy
  5. Pass CI - All checks must pass

Code of Conduct

  • Be respectful and constructive
  • Welcome newcomers
  • Focus on the code, not the person
  • Accept constructive criticism gracefully

Getting Help

  • Questions: Open a Discussion on GitHub
  • Bugs: Open an Issue
  • Security: Email maintainers directly

Next Steps