Thank you for your interest in contributing to ContextLite! This guide will help you get started.
-
Prerequisites
- Go 1.22 or higher
- Make
- Git
-
Clone the repository
git clone https://github.com/Michael-A-Kuykendall/contextlite.git cd contextlite -
Build and test
make build make test
-
Create a feature branch
git checkout -b feature/your-feature-name
-
Make your changes
- Write tests for new functionality
- Ensure all tests pass:
make test - Check code coverage:
make coverage
-
Run quality checks
make check
-
Commit your changes
git commit -m "feat: add your feature description" -
Submit a pull request
- Push your branch:
git push origin feature/your-feature-name - Open a pull request on GitHub
- Push your branch:
- Follow standard Go conventions
- Use
gofmtfor formatting - Write clear, descriptive commit messages
- Include tests for new functionality
- Update documentation as needed
- Run all tests:
make test - Run specific tests:
go test ./internal/engine - Check coverage:
make coverage - Run benchmarks:
make bench
contextlite/
├── cmd/ # Executable applications
├── internal/ # Private implementation packages
├── pkg/ # Public API packages
├── adapters/ # Language-specific clients
├── docs/ # Documentation
└── test/ # Integration tests
When reporting issues, please include:
- Go version
- Operating system
- Steps to reproduce
- Expected behavior
- Actual behavior
- Any relevant logs or error messages
For feature requests, please:
- Check existing issues first
- Describe the use case
- Explain the expected behavior
- Consider implementation complexity
- Open an issue for bug reports
- Start a discussion for questions
- Check the documentation in
docs/
Thank you for contributing to ContextLite!