Skip to content

v0.9.6

Choose a tag to compare

@TongZhou2017 TongZhou2017 released this 09 Oct 02:46
· 8 commits to main since this release
16ab6f5

🎉 ModTector v0.9.6 - First Official Release

We are excited to announce the first official stable release of ModTector, a high-performance RNA modification detection tool written in Rust!

🚀 Release Highlights

ModTector provides a complete, production-ready workflow for detecting RNA modifications from high-throughput sequencing data:

  • Stable & Production-Ready: Thoroughly tested and ready for research use
  • High Performance: Rust-based implementation with multi-threading support
  • 📦 Easy Installation: Available on crates.io and conda-forge ready
  • 📚 Complete Documentation: Comprehensive guides and examples
  • 🧬 Full Workflow: From BAM files to publication-ready results
  • 🎨 Rich Visualizations: ROC curves, RNA structure plots, and more

📦 Installation

Quick Install (Recommended)

cargo install modtector

System Dependencies

Ubuntu/Debian:

sudo apt-get update
sudo apt-get install build-essential pkg-config libssl-dev libhts-dev

macOS:

brew install htslib

CentOS/RHEL:

sudo yum groupinstall "Development Tools"
sudo yum install pkgconfig openssl-devel htslib-devel

From Source

git clone https://github.com/TongZhou2017/modtector.git
cd modtector
cargo build --release
# Binary will be in target/release/modtector

🌟 Key Features

Multi-Signal Analysis

  • Simultaneous analysis of stop signals (RT truncation) and mutation signals (base mutations)
  • Support for multiple reactivity calculation methods
  • Comprehensive signal normalization and filtering

High Performance

  • Rust-based implementation for memory safety and speed
  • Multi-threading support for parallel processing
  • Efficient htslib integration for BAM file handling
  • Optimized for large-scale datasets

Complete Workflow

  1. Count: Generate pileup statistics from BAM files
  2. Reactivity: Calculate reactivity scores between modified/unmodified samples
  3. Normalize: Filter and normalize signals with multiple methods
  4. Compare: Identify differential modification sites
  5. Plot: Generate publication-quality visualizations
  6. Evaluate: Assess accuracy with ROC/PR curves and AUC metrics

Rich Visualizations

  • Signal distribution scatter plots
  • Reactivity bar charts
  • ROC and PR curves
  • RNA structure SVG plots with reactivity overlay
  • Multi-threaded parallel plotting

Accuracy Assessment

  • AUC (Area Under Curve) calculation
  • F1-score, sensitivity, specificity
  • ROC and PR curve generation
  • Auto-alignment for sequence matching
  • T/U base equivalence handling

🚀 Quick Start

# Generate pileup data from BAM files
modtector count -b sample.bam -f reference.fa -o output.csv -t 8

# Calculate reactivity scores
modtector reactivity -M modified.csv -U unmodified.csv -O reactivity.csv -t 24

# Normalize signals
modtector norm -i reactivity.csv -o normalized.csv -m winsor90 --bases AC

# Generate visualizations
modtector plot -M modified.csv -U unmodified.csv -o plots/ -r normalized.csv -t 8

# Evaluate accuracy
modtector evaluate -r normalized.csv -s structure.dp -o evaluation/ --gene-id 16S_rRNA

📊 Example Results

ModTector produces publication-ready outputs including:

  • Signal Analysis: Comprehensive pileup statistics with depth and coverage
  • Reactivity Profiles: Normalized reactivity scores for modification detection
  • ROC Curves: Performance evaluation against known modification sites
  • Structure Plots: RNA secondary structure visualization with signal overlay
  • Comparison Reports: Statistical analysis of differential modifications

🔬 Use Cases

ModTector is designed for:

  • DMS-seq: Dimethyl sulfate sequencing analysis
  • SHAPE-MaP: SHAPE mutational profiling
  • icSHAPE: In vivo click SHAPE
  • m6A/m1A Detection: RNA methylation analysis
  • Custom RNA Modifications: Flexible framework for various modification types

📚 Documentation

Comprehensive documentation is available:


🎯 System Requirements

  • Operating System: Linux, macOS, or Windows
  • RAM: 4 GB minimum (8 GB recommended for large datasets)
  • Storage: 2 GB free space
  • CPU: Multi-core processor recommended for parallel processing
  • Rust: Version 1.70 or higher

🤝 Contributing

We welcome contributions! Please feel free to:

  • 🐛 Report bugs and issues
  • 💡 Suggest new features
  • 📝 Improve documentation
  • 🔧 Submit pull requests

Visit our GitHub repository to get started.


📄 License

ModTector is licensed under the MIT License, allowing free use in both academic and commercial settings.


📞 Support


🙏 Acknowledgments

Thanks to the bioinformatics community for inspiration and to all early testers who provided valuable feedback!


Full Changelog: https://github.com/TongZhou2017/modtector/blob/main/CHANGELOG.md

Download: See assets below for source code archives

Verify Release: SHA256 checksums available in SHA256SUMS file