First of all, thank you for your interest in contributing to TraceLab! ❤️
Whether you're fixing a bug, improving documentation, designing a new feature, or helping with translations, every contribution is appreciated.
You can contribute by:
- Reporting bugs
- Suggesting new features
- Improving documentation
- Fixing bugs
- Optimizing performance
- Improving UI/UX
- Adding tests
- Reviewing Pull Requests
Please check existing Issues before opening a new one.
If your issue already exists, consider joining the discussion instead of creating a duplicate.
When reporting a bug, please include:
- Device model
- Android version
- TraceLab version
- Steps to reproduce
- Expected behavior
- Actual behavior
- Screenshots (if applicable)
Feature requests are welcome.
Please explain:
- What problem does this solve?
- Why would it benefit users?
- Any ideas for implementation?
Please follow these guidelines:
- Write clean and readable code.
- Keep commits focused on a single change.
- Test your changes before submitting.
- Avoid unnecessary dependencies.
- Respect the existing project structure.
Examples:
feat: add infinite canvas
fix: resolve grid rendering bug
docs: update README
refactor: simplify canvas renderer
style: improve toolbar layout
Before submitting a Pull Request:
- Make sure the project builds successfully.
- Ensure your changes are tested.
- Update documentation if necessary.
- Keep Pull Requests focused on one feature or fix.
TraceLab follows:
- Kotlin coding conventions
- Material Design 3
- MVVM architecture
- Meaningful variable and function names
Please be respectful and constructive.
We welcome developers of all experience levels.
Let's build TraceLab together! 🚀