Contributing
Thank you for considering contributing to LogWard! We welcome contributions from the community.
Ways to Contribute
Development Setup
- 1. Fork the repository
Click "Fork" on GitHub to create your own copy
- 2. Clone your fork
git clone https://github.com/your-username/logward.git - 3. Create a branch
git checkout -b feature/your-feature-name - 4. Install dependencies
pnpm install - 5. Make your changes
Write code, add tests, update documentation
- 6. Test your changes
pnpm test && pnpm typecheck - 7. Commit and push
git commit -m "feat: add new feature"
git push origin feature/your-feature-name - 8. Create pull request
Open a PR on GitHub with a clear description of your changes
Coding Standards
- Use strict TypeScript - no
anytypes - Define interfaces for all data structures
- Use Zod for runtime validation
- Follow existing code patterns
Follow Conventional Commits:
feat: add new featurefix: resolve bug in ingestiondocs: update API documentationrefactor: simplify query logictest: add alert tests
- Write tests for new features
- Maintain or improve code coverage
- Test edge cases and error handling
- Run full test suite before submitting PR
Pull Request Process
- 1. Update documentation
Update relevant docs if you changed API or added features
- 2. Add tests
Include unit/integration tests for new functionality
- 3. Pass CI checks
Ensure all automated tests and linting pass
- 4. Describe changes
Write a clear PR description explaining what and why
- 5. Request review
Wait for maintainer review and address feedback
- 6. Merge
Once approved, a maintainer will merge your PR
Code of Conduct
We are committed to providing a welcoming and inclusive environment. We expect all contributors to:
- Be respectful and inclusive in all interactions
- Accept constructive criticism gracefully
- Focus on what's best for the community
- Show empathy towards other community members
Questions?
If you have questions about contributing, feel free to:
- Open a GitHub Discussion for general questions
- Create an issue for bug reports or feature requests
- Join our community Discord server (coming soon)