Thank you for your interest in contributing to charisma! This document provides guidelines and instructions for contributing.
How to Contribute
Reporting Bugs
- Use the bug report template when opening an issue
- Include a minimal reproducible example
- Provide your session info with
sessionInfo() - Check existing issues to avoid duplicates
Suggesting Features
- Use the feature request template when opening an issue
- Clearly describe the use case and motivation
- Consider alternative approaches
Code Contributions
Fork the repository and clone your fork
-
Create a branch for your changes:
Make your changes following the coding standards below
Write or update tests for new functionality
Update documentation if needed (roxygen comments, vignettes)
-
Run checks locally before submitting:
devtools::check() Commit your changes with clear, descriptive commit messages
Push to your fork and open a pull request
Coding Standards
R Code Style
- Follow the tidyverse style guide
- Use
roxygen2for function documentation - Keep lines under 80 characters when possible
- Use meaningful variable and function names
Documentation
- All exported functions must have complete roxygen documentation
- Include examples in documentation when possible
- Update
NEWS.mdwith user-facing changes
Pull Request Process
- Ensure your code passes all checks (
devtools::check()) - Update documentation as needed
- Add tests for new functionality
- Update
NEWS.mdwith a brief description of changes - Fill out the pull request template completely
- Ensure the PR description clearly explains:
- What changed
- Why it changed
- How to test the changes
