Thank you for your interest in contributing to Ensemble! This document provides guidelines and steps for contributing.
- Fork and clone the repository
- Install dependencies:
npm install - Start dev server:
npm run dev - Open http://localhost:3000
- Use TypeScript for all new code
- Follow existing patterns in the codebase
- Use meaningful variable and function names
- Add comments for complex logic
Use conventional commit format:
feat:New featuresfix:Bug fixesdocs:Documentation changesstyle:Code style changes (formatting, etc.)refactor:Code refactoringtest:Adding or updating testschore:Maintenance tasks
- Create a feature branch from
main - Make your changes
- Run
npm run lintand fix any issues - Run
npm run buildto ensure it compiles - Write a clear PR description
- Request review from maintainers
To add a new model to the selector:
- Open
src/types/index.ts - Add the model to the
DEFAULT_MODELSarray:
{
id: 'provider/model-name',
name: 'Display Name',
provider: 'Provider',
description: 'Brief description'
}When reporting bugs, please include:
- Steps to reproduce
- Expected behavior
- Actual behavior
- Browser and OS information
- Console errors (if any)
Open an issue for any questions about contributing!