Thank you for your interest in contributing to Scrollcast! We welcome contributions from the community.
- Fork the repository
- Clone your fork:
git clone https://github.com/yourusername/scrollcast cd scrollcast - Install dependencies:
cargo build
- Run tests:
cargo test
-
Create a feature branch:
git checkout -b feature/your-feature-name
-
Make your changes:
- Write clean, well-documented code
- Follow Rust naming conventions
- Add tests for new functionality
-
Test your changes:
cargo test cargo fmt cargo clippy -
Commit your changes:
git commit -m "Add feature: description of your changes" -
Push and create a pull request:
git push origin feature/your-feature-name
- New output formats (Word, LaTeX, etc.)
- Better syntax highlighting for more languages
- Performance improvements for large repositories
- Error handling improvements
- Documentation enhancements
- Configuration file support
- Custom templates for output formatting
- Multi-language README translations
- Example projects and tutorials
- GUI interface
- Plugin system
- Cloud integration
When reporting bugs, please include:
- Rust version (
rustc --version) - Pandoc version (
pandoc --version) - Operating system
- Command that caused the issue
- Expected vs actual behavior
- Sample repository (if possible)
Before requesting a feature:
- Check existing issues to avoid duplicates
- Explain the use case and benefits
- Consider implementation complexity
- Provide examples if helpful
- Write unit tests for new functions
- Test with different file types and repositories
- Ensure all existing tests pass
- Test on different operating systems if possible
- Update README.md for new features
- Add inline code comments for complex logic
- Include examples in docstrings
- Update help text for new CLI options
- Use
cargo fmtfor formatting - Use
cargo clippyfor linting - Follow Rust naming conventions
- Keep functions focused and small
- Use meaningful variable names
- Be respectful and inclusive
- Help others learn and contribute
- Provide constructive feedback
- Follow the project's code of conduct
- GitHub Issues: For bugs and feature requests
- GitHub Discussions: For questions and general discussion
- Review existing issues before creating new ones
Thank you for contributing to Scrollcast! 🦀📄