ICTV-git Documentation

Logo

Git-based Viral Taxonomy Management System

View the Project on GitHub shandley/ICTV-git

ICTV-git Documentation

Welcome to the ICTV-git documentation! This project revolutionizes viral taxonomy management by applying git version control principles to the International Committee on Taxonomy of Viruses (ICTV) classification system.

🚀 Major Achievements

What is ICTV-git?

ICTV-git transforms static Excel-based taxonomy into a dynamic, versioned system that enables:

Key Features

1. Complete Historical Archive

2. Research Tools

3. Programmatic Access

Installation

# Clone the repository
git clone https://github.com/shandley/ICTV-git.git
cd ICTV-git

# Create virtual environment (recommended)
python3 -m venv ictv_api_env
source ictv_api_env/bin/activate  # On Windows: ictv_api_env\Scripts\activate

# Install API dependencies
pip install -r requirements_api.txt

# Build complete 20-year git repository
python scripts/complete_20_year_conversion.py

# Start REST API server
python scripts/run_api_server.py --dev

Quick Example

# Track a virus through history
from src.community_tools.taxonomy_browser import TaxonomyBrowser

browser = TaxonomyBrowser("output/git_taxonomy")
history = browser.get_species_history("Tobacco mosaic virus")

# Compare two versions
from src.community_tools.version_comparator import VersionComparator

comparator = VersionComparator("output/git_taxonomy")
changes = comparator.compare_versions("MSL37", "MSL38")
print(f"Species added: {len(changes['added'])}")
print(f"Species reclassified: {len(changes['reclassified'])}")

Use Cases

For Virologists

For Bioinformaticians

For Database Maintainers

Documentation Sections

  1. Getting Started
    • Installation guide
    • Basic usage tutorial
    • Common workflows
  2. API Documentation
    • REST API endpoints
    • Authentication
    • Code examples
  3. Data Management
    • Migration between versions
    • Validation procedures
    • Quality scoring
  4. Development
    • Contributing guidelines
    • Architecture overview
    • Testing procedures

Key Discoveries

Our analysis of 20 years of ICTV data revealed:

Support

Citation

If you use ICTV-git in your research, please cite:

@software{ictv-git,
  author = {Handley, Scott},
  title = {ICTV-git: Git-based Viral Taxonomy Management},
  year = {2024},
  url = {https://github.com/shandley/ICTV-git}
}

License

This project is licensed under the MIT License. ICTV data is used under Creative Commons license.