Contributing to Sandroid

We welcome contributions to Sandroid! This guide explains how to contribute effectively.

Development Setup

# Clone repository
git clone https://github.com/fkie-cad/Sandroid_core.git
cd Sandroid_core

# Install in development mode
pip install -e .[dev]

# Initialize configuration
sandroid-config init

# Run tests
pytest

Code Guidelines

Follow the comprehensive coding guidelines outlined in CODING_GUIDELINES.md:

  • Write clean, self-documenting code following Python PEP 8 standards

  • Use meaningful variable and function names (snake_case for functions, PascalCase for classes)

  • Add comprehensive tests for new features (aim for 80%+ coverage)

  • Update documentation and docstrings

  • Follow existing Sandroid architectural patterns

  • Implement proper error handling and logging

  • Follow SOLID principles and maintain DRY code

For complete details on code style, testing requirements, security practices, and Sandroid-specific patterns, see the full CODING_GUIDELINES.md document.

Submitting Changes

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Add tests

  5. Update documentation

  6. Submit a pull request

For more details, see the AUTHORS.md file.