Thank you for your interest in contributing to STForensicMacOS! This document explains how you can contribute to the project.
- Fork and clone the repository:
git clone https://github.com/silexi/stforensicmacos.git
cd stforensicmacos- Create a virtual environment:
python3 -m venv venv
source venv/bin/activate # macOS/Linux
# or
venv\Scripts\activate # Windows- Install dependencies:
pip install -r requirements.txt- Install development dependencies:
pip install -r requirements-dev.txt # If available- Use GitHub Issues
- Use descriptive titles
- Include step-by-step reproduction instructions
- Explain expected vs actual behavior
- Include system information (macOS version, Python version)
- Explain the purpose of the feature
- Specify use cases
- Suggest implementation if possible
- Use fork and pull request workflow
- Create feature branches
- Follow coding standards
- Add tests when possible
- Follow PEP 8 standards
- Use 4-space indentation
- 79 character line length
- Add docstrings
- Use type hints
- Be descriptive and concise
- Use English
- Follow conventional commits format:
feat:New featurefix:Bug fixdocs:Documentationstyle:Code stylerefactor:Refactoringtest:Test addition/updatechore:Maintenance tasks
feat: Add memory dump functionality
fix: Resolve IPv6 address parsing issue
docs: Update README with installation instructions
style: Format code according to PEP 8
# Lite mode test
sudo python3 main.py --mode lite --output ./test_reports
# Specific module test
sudo python3 main.py --modules network --output ./test_reports
# HTML report test
sudo python3 main.py --mode lite --output ./test_reports --format html# Unit tests
python -m pytest tests/
# Coverage report
python -m pytest --cov=src tests/- Create an issue (if none exists)
- Create a feature branch:
git checkout -b feature/your-feature-name
- Make your changes
- Test your changes
- Commit your changes:
git add . git commit -m "feat: Add your feature description"
- Push your changes:
git push origin feature/your-feature-name
- Create a Pull Request
- Code follows standards
- Tested
- Documentation updated
- Commit messages descriptive
- Issue reference added
- Report security vulnerabilities directly to maintainers
- Don't create public issues
- Provide detailed information
- Perform read-only operations only
- Protect user data
- Check root privileges
- Use hash verification
- Add docstrings for all functions
- Explain complex algorithms
- Include usage examples
- Add documentation for new features
- Update examples
- Add screenshots if needed
- PDF reporting
- CSV export
- GUI interface
- Docker support
- Increase test coverage
- Performance optimization
- Add new forensic modules
- Improve existing modules
- Enhance error handling
- Add new report formats
- Improve HTML reports
- Add graphs and visualizations
- GitHub Issues: Issues
- Discussions: Discussions
By contributing to this project, you agree that your contributions will be licensed under the MIT License.
Thank you for contributing! π