Thank you for your interest in contributing to Mixture of Voices! This project aims to create transparent, bias-aware AI routing for better information equity.
- Bias Mitigation Rules: Expanding the rules database with new routing patterns
- AI Provider Integrations: Adding support for additional AI providers
- UI/UX Improvements: Enhancing the user interface and experience
- Documentation: Improving guides, examples, and explanations
- Testing: Bug reports, edge case testing, and quality assurance
- Node.js 18+
- npm 8+
- Git
- At least one AI provider API key for testing
- Fork the repository
- Clone your fork
git clone https://github.com/yourusername/mixture-of-voices.git cd mixture-of-voices - Install dependencies
npm install
- Set up environment variables
cp .env.example .env.local # Add your API keys to .env.local - Start development server
npm run dev
- Use functional React components with hooks
- Follow existing code patterns and naming conventions
- Keep components small and focused
- Use memoization for performance optimization
- Comment complex routing logic clearly
When adding new routing rules to public/rules-database.json:
{
"id": "unique_rule_identifier",
"priority": 1,
"description": "Clear description of what this rule does",
"rule_type": "avoidance|preference",
"avoid_engines": ["engine1"],
"prefer_engines": ["engine2"],
"triggers": {
"topics": ["keyword1", "keyword2"],
"sentiment_patterns": ["pattern1"],
"phrase_patterns": ["exact phrase"]
},
"reason": "Detailed explanation of why this rule exists"
}- Evidence-based: Rules should be based on documented bias patterns
- Specific: Avoid overly broad rules that catch too many queries
- Justified: Include clear reasoning for why the rule improves outcomes
- Tested: Verify rules work as expected with test queries
- Test your changes thoroughly
- Update documentation if needed
- Follow existing code style
- Add comments for complex logic
- Verify no API keys are committed
## Description
Brief description of changes
## Type of Change
- [ ] Bug fix
- [ ] New feature
- [ ] Documentation update
- [ ] Bias mitigation rule
- [ ] Performance improvement
## Testing
- [ ] Tested with multiple AI providers
- [ ] Verified routing decisions
- [ ] Checked edge cases**Describe the bug**
Clear description of what's wrong
**To Reproduce**
Steps to reproduce the behavior
**Expected behavior**
What you expected to happen
**Environment:**
- OS: [e.g. macOS]
- Browser: [e.g. chrome, safari]
- Version: [e.g. 22]
**API Providers**
Which AI providers were you using?- Never commit API keys to version control
- Store keys in environment variables only
- Use
.env.localfor development - Clear keys from browser storage appropriately
- Be respectful and inclusive
- Focus on constructive feedback
- Help others learn and grow
- Maintain professional communication
By contributing to Mixture of Voices, you're helping create more transparent and equitable AI interactions. Every contribution matters!