Thank you for your interest in contributing! π
Please read our Code of Conduct before contributing.
# Clone repository
git clone https://github.com/JoshWheeler08/local-llm-gateway.git
cd local-llm-gateway
# Install dependencies
npm install
cd proxy && npm install && cd ..
# Run tests
npm test
# Run linting
npm run lintWe use Conventional Commits:
<type>(<scope>): <subject>
<body>
<footer>
Types:
feat: New featurefix: Bug fixdocs: Documentation changesstyle: Code style changes (formatting)refactor: Code refactoringperf: Performance improvementstest: Test updatesbuild: Build system changesci: CI/CD changeschore: Other changes
Examples:
feat(bedrock): add Mistral model support
fix(adapter): resolve provider detection bug
docs(readme): update installation instructions- Fork the repository
- Create a feature branch:
git checkout -b feat/my-feature- Make your changes
- Commit with conventional commits:
git commit -m "feat(scope): add new feature"- Push to your fork:
git push origin feat/my-feature- Open a Pull Request
- Ensure all tests pass
- Update documentation if needed
- Follow the PR template
- Wait for review from maintainers
- Address any requested changes
- TypeScript for all code
- ESLint for linting
- Prettier for formatting (optional)
- Follow existing patterns
# Run all tests
npm test
# Run with coverage
npm run test:coverage
# Run specific test
npm test -- server.test.tslocal-llm-gateway/
βββ proxy/ # Application code
β βββ src/
β β βββ adapters/ # Provider adapters
β β βββ runners/ # Model runners
β β βββ types/ # Type definitions
β βββ package.json
βββ kubernetes/helm/ # Helm chart
βββ .github/ # CI/CD workflows
- π Read the README
- π¬ Open a Discussion
- π Report bugs via Issues
By contributing, you agree that your contributions will be licensed under the project's license.