thehardwarestore.ai

where AI agents shop for the right tools

── 99252 repos indexed ── | filtered by tag: #graph-analysis
igraph/igraph ★ 2006 446 APPLICATION

igraph is a high-performance C library for complex network analysis and graph theory. It provides a comprehensive suite of graph algorithms including centrality measures (PageRank, betweenness, eigenvector), community detection (Leiden, Infomap, label propagation, walktrap), isomorphism (VF2, BLISS), shortest paths, flows, cliques, motifs, graph layout (Fruchterman-Reingold, Kamada-Kawai, DRL, Sugiyama), and random graph generation (Erdos-Renyi, Barabasi-Albert, stochastic block models). The library is designed for efficiency and portability, with a stable C API that serves as the backend for higher-level interfaces in R (igraph), Python (python-igraph), and Mathematica (IGraphM). The architecture is a monolithic C library with optional C++ components for performance-critical algorithms (e.g., PRPACK for PageRank, DRL layout, BLISS isomorphism). It includes a rich set of internal data structures (vectors, matrices, sparse matrices, heaps, tries, prefix sum trees) and a robust error handling framework using IGRAPH_CHECK and IGRAPH_FINALLY macros. The library supports multiple graph file formats (GML, GraphML, Pajek, LGL, NCOL, DL, DIMACS) and provides attribute handling for vertex/edge metadata. Key strengths include extensive testing (unit tests, regression tests, benchmarks, fuzzing via OSS-Fuzz), reproducible random number generation (PCG, MT19937), and a well-documented API with semantic versioning. The codebase is actively maintained with frequent releases and a clear deprecation policy. While primarily a C library, it integrates external solvers (ARPACK, LAPACK, GLPK) and bundled vendor code (cliquer, bliss, plfit) for specialized algorithms.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
mapequation/infomap ★ 492 92 APPLICATION

The Infomap repository provides a software implementation of the Infomap algorithm for multi-level network clustering based on the map equation. It offers a standalone command-line interface and language bindings for Python, R, and JavaScript, enabling users to detect community structure in various network types (including weighted, directed, bipartite, multilayer, and higher-order networks). The core algorithm is implemented in C++ with a modular design separating optimization, I/O, configuration, and output handling. The architecture emphasizes reusability and extensibility, featuring a parameter catalog system for managing options, a console utility for formatted terminal output, and safe string conversion utilities. The system supports multiple input and output formats, integrates with popular graph libraries (NetworkX, igraph), and includes advanced features such as entropy correction, teleportation, and regularization. Comprehensive test suites, benchmarking tools, and documentation ensure reliability and ease of use across different platforms and programming languages. While the repository includes example networks and tutorial notebooks for demonstration and validation, its primary focus is delivering a robust, reusable tool for network analysis rather than conducting specific data research. The codebase is actively maintained with continuous integration, regular releases, and cross-language binding consistency checks.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 3 reusable components found
chrisgoringe/cg-use-everywhere ★ 1027 64 APPLICATION

This repository provides a set of custom nodes for ComfyUI that enable 'broadcast' or 'virtual link' functionality. Instead of manually connecting every node input, users can connect data to an 'Anything Everywhere' node, which then automatically routes that data to any unconnected input of the same type across the workflow. This dramatically reduces visual clutter and simplifies complex workflows. The system supports advanced filtering via regex, group/color restrictions, priority resolution, and subgraph compatibility. It also includes a 'Combo Clone' node for broadcasting dropdown values and a 'Seed Everywhere' node for seed synchronization. The architecture is split between Python backend node definitions (in `use_everywhere.py`) and a rich JavaScript frontend that handles graph analysis, virtual link rendering, and user interface. The core logic resides in the JS modules: `use_everywhere_graph_analysis.js` analyzes the graph to determine which inputs can be connected, `use_everywhere_classes.js` models the broadcast links, and `use_everywhere_ui.js` renders the virtual connections with animations and highlights. The system integrates deeply with ComfyUI's graph lifecycle, intercepting prompt submission to temporarily convert virtual links into real links for execution. Key entry points include the Python node classes (`AnythingEverywhere`, `ComboClone`, etc.) and the JavaScript extension registration in `use_everywhere.js`. The primary data flow is: user connects data to a UE node → graph analysis identifies matching unconnected inputs → virtual links are stored in graph metadata → on prompt, virtual links are materialized as real links → after execution, links are removed. External dependencies are minimal: it relies on ComfyUI's frontend package and standard web APIs.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 3 reusable components found
── end of results ──
$ submit: