diart is a Python library and CLI tool for real-time online speaker diarization, built on top of pyannote.audio. It processes audio streams (microphone, files, WebSocket) with low latency using a modular pipeline of segmentation, embedding, clustering, and aggregation blocks. The library is designed for both streaming and offline evaluation, with support for overlap-aware processing and hyperparameter tuning via Optuna. It provides a reactive streaming architecture using RxPY, making it suitable for building AI-powered audio applications. The repository includes a benchmark suite, expected outputs for standard diarization datasets (AMI, DIHARD, VoxConverse), and CI/CD pipelines. While primarily a software library, it has a strong research component with published results and reproducibility artifacts.
phylotree.js is a JavaScript library for phylogenetic tree visualization and analysis, designed for web-based applications. It provides robust parsing of multiple tree formats (Newick, PhyloXML, NEXUS, NEXML, BEAST), interactive SVG rendering via D3, and a suite of analytical utilities including metrics (Sackin's index, pairwise distances, root-to-tip regression), clustering algorithms (Cluster Picker, PhyloPart), and tree construction (neighbor joining). The library is modular, with separate modules for formats, rendering, metrics, and clustering, and includes CLI tools for common operations like rerooting, tagging, and validation. It is used in production at phylotree.hyphy.org and supports real-world phylogenetic workflows in molecular epidemiology and evolutionary biology. While the codebase demonstrates solid engineering with reusable patterns like an event emitter and a robust Newick parser, it shows signs of technical drift with legacy dependencies (underscore, lodash, moment) and some unused code.
This repository provides implementations of the Dynamic Time Warping Barycenter Averaging (DBA) algorithm in multiple programming languages (Java, Python, MATLAB, and Cython). The DBA algorithm computes the average of a set of time series under Dynamic Time Warping (DTW) by iteratively aligning each series to the current average and updating the average as the mean of aligned points. The repository includes the core algorithm, a multivariate extension, and versions with warping window constraints. The primary implementation is in Python (DBA.py), which is self-contained and requires only NumPy. The code is well-structured and demonstrates the iterative DTW-based averaging process, which is a non-trivial approach to time series averaging.
Supervizer is a Node.js process manager that provides CLI and RESTful API interfaces for spawning, stopping, and managing Node.js applications. It follows a client-server architecture where the supervizer-client communicates with a supervizer-server via HTTP to manage application processes. The server maintains application state in memory, supports process monitoring, file watching for automatic restarts, grouping of applications, and secure authentication. Key features include keeping applications alive on crash, resource monitoring (CPU/memory), log and PID file management, and JSON-based configuration persistence.