kira-ls-aligner 0.1.2

Unified short- and long-read sequence aligner written in Rust 2024. It combines minimap2-style minimizers and chaining with BWA-MEM2-style exact-match anchoring and output semantics. The goal is drop-in compatibility with bwa-mem pipelines while supporting long reads efficiently.
Documentation
use anyhow::Result;
use clap::{Parser, Subcommand};

use kira_ls_aligner::cli::{IndexArgs, MemArgs, cmd_index, cmd_mem};

#[derive(Parser)]
#[command(name = "kira-ls-aligner")]
#[command(about = "Unified short/long read aligner", version, author)]
struct Cli {
    #[command(subcommand)]
    command: Commands,
}

#[derive(Subcommand)]
enum Commands {
    /// Build a minimizer index
    Index(IndexArgs),
    /// Align reads (bwa-mem compatible)
    Mem(MemArgs),
}

fn main() -> Result<()> {
    let cli = Cli::parse();
    match cli.command {
        Commands::Index(args) => cmd_index(args),
        Commands::Mem(args) => cmd_mem(args),
    }
}