Thank you for your interest in contributing to HETA! This document provides guidelines for contributing to this project.
- Use the GitHub Issues page to report bugs or request features.
- When reporting a bug, please include:
- Python version (
python --version) - Operating system
- Steps to reproduce the issue
- Expected vs. actual behavior
- Relevant error messages or screenshots
- Python version (
- Fork the repository on GitHub.
- Clone your fork locally:
git clone https://github.com/YOUR_USERNAME/HETA.git cd HETA - Create a branch for your changes:
git checkout -b feature/your-feature-name
- Make your changes and test them.
- Commit with a clear message:
git commit -m "Add: brief description of your change" - Push to your fork:
git push origin feature/your-feature-name
- Open a Pull Request on GitHub.
git clone https://github.com/canslab1/HETA.git
cd HETA
pip install -r requirements.txt
python run_heta.py # Verify the GUI launches correctly- Follow PEP 8 conventions.
- Use type hints where practical.
- Keep functions focused and reasonably sized.
- Document non-obvious algorithms with comments referencing the paper.
| Module | Responsibility |
|---|---|
heta/engine.py |
Core HETA algorithm (5-phase edge classification) |
heta/cli.py |
Command-line interface |
heta/plotting.py |
Matplotlib visualizations |
heta/excel_writer.py |
Excel and CSV output |
heta/constants.py |
Configuration constants and datasets |
heta/gui/ |
PySide6 graphical interface |
Feel free to open an issue for any questions about the codebase or contribution process.