Skip to content

Latest commit

 

History

History
82 lines (58 loc) · 2.48 KB

File metadata and controls

82 lines (58 loc) · 2.48 KB

Contributing to VoxKit

Thank you for your interest, this document provides guidelines and instructions for contributing to the project.

Table of Contents


Ways to Contribute

Finding an Issue:

  1. Check open issues
  2. Look for issues labeled good first issue for beginner-friendly tasks
  3. Comment on the issue to express interest before starting work

Reporting a Bug:

  1. Check if it's already reported in issues
  2. If not, create a new issue with:
    • Clear, descriptive title
    • Steps to reproduce
    • Expected vs actual behavior
    • Environment details (OS, Python version, etc.)
    • Screenshots if applicable

Requesting a Feature:

  • Large features, architectural changes, or shifts in project direction should be proposed in Jira.
  • Bugs and small, well-scoped features can be raised as GitHub issues.
  1. Check small feature requests
  2. Open an issue describing:
    • The problem you're trying to solve
    • Your proposed solution
    • Alternatives considered
    • Impact on existing functionality

If you’re unsure which path applies, or you aren't part of the team on Jira, open an issue to start the discussion.


Development Workflow

Making Changes

  1. Make your changes in small, logical commits
  2. Write clear, descriptive commit messages
  3. Test your changes thoroughly - see TESTING.md for guidelines
  4. Run invoke test-coverage to verify tests pass for core modules
  5. Update documentation as needed

Testing Guidelines

  • Write tests for new business logic in storage/, config/, and analyzers/ modules
  • GUI components are excluded from coverage metrics
  • Run invoke test-coverage to see coverage for testable modules
  • Aim for 70-80% coverage on new business logic

Commit Message Format

<type>: <subject>

Types:

  • feat: New feature
  • fix: Bug fix
  • docs: Documentation changes
  • style: Code style changes (formatting, etc.)
  • refactor: Code refactoring
  • test: Adding or updating tests
  • chore: Maintenance tasks

Review Process

  • Maintainers will review your PR
  • Address feedback by pushing new commits
  • Once approved, maintainers will merge