awesome-repositories.com
Blog
MCP
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoServidor MCPAcerca deCómo clasificamosPrensa
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

16 repositorios

Awesome GitHub RepositoriesModule Dependency Analysis

Static analysis of module graphs to detect circular imports and dependency errors.

Distinct from Static Analysis: Specifically targets module-level dependency graphs rather than general logic or type validation.

Explore 16 awesome GitHub repositories matching software engineering & architecture · Module Dependency Analysis. Refine with filters or upvote what's useful.

Awesome Module Dependency Analysis GitHub Repositories

Encuentra los mejores repositorios con IA.Buscaremos los repositorios que mejor coincidan usando IA.
  • pahen/madgeAvatar de pahen

    pahen/madge

    10,117Ver en GitHub↗

    Madge is a JavaScript module dependency visualizer and architecture mapper. It analyzes source code to create graphs and diagrams of module relationships, supporting CommonJS, AMD, and ES6 standards. The tool functions as a circular dependency detector to identify recursive import loops and a dependency graph generator that exports relationship maps into image and vector formats. It provides utilities for auditing project structure, including the identification of orphaned modules and leaf modules. Its broader capabilities include dead code identification, module impact analysis through depe

    Creates visual graphs and diagrams of module relationships for CommonJS, AMD, and ES6 source code.

    JavaScriptamdcommonjsdependencies
    Ver en GitHub↗10,117
  • didi/chameleonAvatar de didi

    didi/chameleon

    8,966Ver en GitHub↗

    Chameleon is a cross-platform application framework and component library used to develop applications for the web and various mini-app platforms from a single shared codebase. It functions as a multi-platform build pipeline that compiles source code into different target formats while providing an MVVM-based user interface system for managing application state. The framework employs a polymorphic protocol to extend custom components and APIs, allowing for platform-specific implementations while maintaining cross-end compatibility. It includes a specialized build tool for static analysis that

    Analyzes dependency trees and markup syntax at build time to detect circular imports and template errors.

    JavaScript
    Ver en GitHub↗8,966
  • google/traceur-compilerAvatar de google

    google/traceur-compiler

    8,164Ver en GitHub↗

    Traceur is a JavaScript syntax transpiler that transforms modern and next-generation language features into compatible versions for older runtime environments. It functions as a compiler that translates proposed language standards and upcoming syntax into current versions to maintain cross-engine compatibility. The project operates as an asynchronous code transformer, converting async functions and generators into promise-based state machines. It includes a functional tail-call optimizer that wraps recursive functions in trampolines to prevent stack overflows and an ECMAScript polyfill engine

    Analyzes module dependency graphs through import and export statements to organize code loading.

    JavaScript
    Ver en GitHub↗8,164
  • sverweij/dependency-cruiserAvatar de sverweij

    sverweij/dependency-cruiser

    6,804Ver en GitHub↗

    Dependency-cruiser es un analizador de dependencias y linter arquitectónico para JavaScript y TypeScript. Sirve como herramienta de análisis estático para mapear, visualizar y validar las relaciones entre módulos dentro de un codebase sin necesidad de ejecutar el código. El proyecto se distingue por su capacidad para imponer límites arquitectónicos mediante un sistema basado en reglas. Detecta dependencias circulares, identifica módulos huérfanos y código muerto, y valida restricciones de dependencia utilizando reglas de relaciones permitidas y prohibidas. También proporciona análisis cuantitativo de estabilidad calculando el acoplamiento aferente y eferente para identificar áreas frágiles de un proyecto. La herramienta cubre una amplia gama de capacidades, incluyendo el análisis de módulos multi-estándar para ES6, CommonJS y TypeScript, así como la visualización de grafos de dependencia con agregación a nivel de carpeta. Proporciona funciones de automatización para integración continua, como el establecimiento de líneas base de violaciones y exportaciones de datos estructurados en formatos JSON o CSV. El sistema incluye un proceso interactivo de bootstrapping de configuración del proyecto para generar archivos de configuración adaptados al entorno local.

    Defines forbidden or allowed relationships between files or folders using path patterns to prevent regressions.

    JavaScript
    Ver en GitHub↗6,804
  • ondrajz/go-callvisAvatar de ondrajz

    ondrajz/go-callvis

    6,488Ver en GitHub↗

    Visualize call graph of a Go program using Graphviz

    Restricts the call graph to show only functions within a specified module for targeted analysis.

    Goawesome-gocallgraphgolang
    Ver en GitHub↗6,488
  • tianocore/edk2Avatar de tianocore

    tianocore/edk2

    6,061Ver en GitHub↗

    edk2 es un proyecto de desarrollo para crear firmware de sistema que cumpla con la especificación UEFI. Proporciona la infraestructura necesaria para inicializar plataformas de hardware y arrancar sistemas operativos a través de múltiples arquitecturas de CPU. El proyecto utiliza una arquitectura de firmware modular que desacopla los protocolos de gestión de alto nivel de las capas de transporte físico. Implementa características de seguridad críticas, incluyendo una cadena de arranque medida, primitivas criptográficas para la autenticación de imágenes y soporte para implementaciones de hardware y software de Trusted Platform Module (TPM). Su superficie de capacidades se extiende a estándares de gestión de plataformas como Redfish, IPMI y MCTP, así como a la generación de tablas ACPI dinámicas. El proyecto también incluye un conjunto completo de herramientas para compilación entre arquitecturas, simulación de firmware y emulación de plataformas virtuales para hipervisores como KVM, Xen y QEMU. El proyecto incluye un sistema de compilación multi-objetivo y orquestación de pruebas automatizadas para validar la funcionalidad del firmware tanto en entornos emulados como físicos.

    Compares module dependencies against allowed packages to prevent unauthorized cross-package dependencies.

    Ccfirmwarepython
    Ver en GitHub↗6,061
  • benmosher/eslint-plugin-importAvatar de benmosher

    benmosher/eslint-plugin-import

    5,922Ver en GitHub↗

    eslint-plugin-import es un plugin de análisis estático para ESLint que proporciona un conjunto de reglas y resolvedores para validar sentencias de importación y aplicar restricciones arquitectónicas sobre cómo los archivos importan y exportan código. Funciona como un validador y resolvedor de módulos para asegurar que las declaraciones de importación apunten a archivos válidos y que los símbolos referenciados existan. El proyecto identifica cadenas de importación recursivas para prevenir dependencias circulares y utiliza un sistema de resolución configurable para mapear alias y rutas de archivo no estándar. También puede distinguir entre archivos internos del proyecto y dependencias de bibliotecas externas mediante coincidencia de patrones de rutas y carpetas. El plugin cubre áreas más amplias de calidad de código, incluyendo la aplicación de estilos de importación para ordenamiento y agrupación, la restricción de sistemas de módulos específicos y la verificación de la disponibilidad de exportaciones para prevenir errores en tiempo de ejecución. Además, puede limitar las fuentes de importación según la ubicación de la carpeta o prohibir tipos de rutas específicos.

    Determines if a module is a local project file or an external dependency using path pattern matching.

    JavaScript
    Ver en GitHub↗5,922
  • terraform-linters/tflintAvatar de terraform-linters

    terraform-linters/tflint

    5,748Ver en GitHub↗

    TFLint es una herramienta de análisis estático y validador de infraestructura como código diseñada para identificar errores y aplicar mejores prácticas dentro de los archivos de configuración de Terraform. Funciona como una puerta de calidad para flujos de trabajo automatizados y un servidor de lenguaje que proporciona diagnósticos en tiempo real y errores de linting directamente dentro de los editores de texto compatibles. El proyecto utiliza un framework de plugins gRPC que permite la integración de reglas de validación específicas del proveedor personalizadas a través de binarios independientes y un SDK dedicado. Esta arquitectura separa la lógica de linting central de la validación específica de la nube, admitiendo la instalación automatizada de conjuntos de reglas externos para verificar las propiedades de los recursos contra las especificaciones oficiales. El motor de análisis resuelve los valores de configuración y evalúa las funciones integradas, expandiendo bloques dinámicos y colecciones de recursos para inspeccionar la estructura instanciada final. Cubre la aplicación de estándares de codificación, análisis de llamadas a módulos y la detección de atributos de recursos no válidos, con la capacidad de exportar resultados estructurados en formatos como SARIF. La herramienta incluye una interfaz de línea de comandos para el filtrado de objetivos de análisis y proporciona corrección automática de problemas para las reglas admitidas.

    Inspects attributes within local and remote module calls to identify issues originating from module configurations.

    Go
    Ver en GitHub↗5,748
  • farm-fe/farmAvatar de farm-fe

    farm-fe/farm

    5,580Ver en GitHub↗

    Farm is a Rust-based web build tool and development server that compiles JavaScript, TypeScript, CSS, HTML, and static assets into optimized bundles. It uses a module-graph-based bundling approach with persistent module-level caching, enabling near-instant builds and sub-20ms hot module replacement during development. The tool processes assets based on file extensions, handling CSS, Sass, Less, PostCSS, HTML, and images as first-class modules without requiring JavaScript transformation. Farm distinguishes itself through its Vite-compatible plugin system, accepting Vite, Rollup, and Unplugin p

    Discovers and registers module import dependencies to fully resolve the build dependency graph.

    Rustbuild-toolbundlercompiler
    Ver en GitHub↗5,580
  • charles2gan/gda-android-reversing-toolAvatar de charles2gan

    charles2gan/GDA-android-reversing-Tool

    4,778Ver en GitHub↗

    Este proyecto es una suite integral de ingeniería inversa para Android que funciona como descompilador, desofuscador de bytecode y herramienta de análisis de malware. Está diseñado para convertir binarios APK, DEX y OAT en código fuente legible por humanos utilizando una implementación nativa que no requiere una Máquina Virtual Java. La plataforma destaca por su integración con Frida para el análisis dinámico, permitiendo a los usuarios enganchar métodos, inyectar JavaScript personalizado y volcar la memoria del dispositivo en tiempo real. También cuenta con motores de seguridad especializados, incluyendo un motor de propagación de contaminación (taint propagation) y una máquina de estados de pila, para detectar fugas de privacidad, comportamientos maliciosos y vulnerabilidades de seguridad. La suite cubre una amplia gama de capacidades analíticas, incluyendo el parcheo y reempaquetado de binarios, mapeo de dependencias de referencias cruzadas y análisis de flujo de datos. Proporciona herramientas para la identificación de empaquetadores de software, decodificación de cadenas cifradas y búsqueda global de metadatos a través de los recursos de la aplicación. La herramienta proporciona una interfaz de línea de comandos y admite la automatización del análisis mediante scripts personalizados en Python o Java.

    Traces callers of specific functions to identify insecure implementation patterns in the function bodies.

    Pythondecompilermalware-analysismobile-security
    Ver en GitHub↗4,778
  • scottrogowski/code2flowAvatar de scottrogowski

    scottrogowski/code2flow

    4,586Ver en GitHub↗

    code2flow es un mapeador de flujo de programas estático y generador de grafos de llamadas de código fuente. Analiza el código fuente para producir diagramas de flujo visuales que mapean las relaciones de llamadas a funciones y las rutas de ejecución. El proyecto incluye un visualizador de trazas de llamadas asíncronas que sigue las rutas de ejecución a través de llamadas async y await para mapear la lógica de programas asíncronos. También proporciona una interfaz de análisis de código programable, permitiendo que la lógica de generación de grafos de llamadas se integre en otras aplicaciones de software. El sistema maneja el análisis de código estático convirtiendo el código fuente en árboles de sintaxis abstracta para identificar definiciones de funciones y sitios de llamadas. Admite el filtrado de grafos de llamadas para restringir el alcance de las visualizaciones a través de filtros de contenido y extracción de rutas con límite de profundidad, mientras proporciona un estilo visual para distinguir los flujos lógicos.

    Extracts subsets of the call graph by restricting the depth of connections from a target function.

    Python
    Ver en GitHub↗4,586
  • reactjs/server-components-demoAvatar de reactjs

    reactjs/server-components-demo

    4,359Ver en GitHub↗

    This project is an implementation of React Server Components, providing a full-stack component architecture that blends server-side rendering with client-side interactivity. It enables the development of web applications where server-only components for data fetching and interactive client components coexist within a single component tree. The system focuses on server-client data orchestration, allowing for the execution of server functions and database mutations across the network boundary. It distinguishes itself through a hybrid component architecture that shifts component execution to the

    Maps relationships between files and imports at build-time to minimize the final client bundle size.

    JavaScript
    Ver en GitHub↗4,359
  • kuzudb/kuzuAvatar de kuzudb

    kuzudb/kuzu

    3,965Ver en GitHub↗

    Kùzu is an embedded property graph database engine designed for high-performance analytical queries and local data management. It operates as a library within the host application process, utilizing a columnar-based storage architecture and just-in-time query compilation to execute complex graph traversals and pattern matching efficiently. By mapping database files directly into system memory, it ensures data durability and high-speed access while maintaining ACID-compliant transactional integrity. The engine distinguishes itself by integrating vector similarity search and full-text search di

    Retrieve lists of nodes or relationships from a recursive path to allow for further inspection or data processing.

    C++cypherdatabaseembeddable
    Ver en GitHub↗3,965
  • antfu/node-modules-inspectorAvatar de antfu

    antfu/node-modules-inspector

    2,720Ver en GitHub↗

    node-modules-inspector is a Node.js dependency visualizer and npm package inspector. It provides a web interface for exploring the structure and contents of the node_modules directory to analyze and audit project dependencies. The tool functions as a static dependency graph generator, exporting a project's dependency view as a standalone single-page application. This allows the dependency tree to be hosted as static documentation for sharing and reference. The system scans the filesystem to build a map of installed packages and their physical locations. It includes capabilities for exploring

    Analyzes the module graph within node_modules to identify redundant packages and version conflicts.

    Vue
    Ver en GitHub↗2,720
  • google/closure-compiler-jsAvatar de google

    google/closure-compiler-js

    1,834Ver en GitHub↗

    Closure Compiler is a JavaScript build utility designed to transform, optimize, and validate source code for production environments. It functions as a minifier and transpiler, converting modern ECMAScript syntax into older, widely compatible versions to ensure reliable execution across diverse browsers. The tool distinguishes itself through a multi-pass optimization pipeline that performs complex refactoring, such as constant folding, function inlining, and variable renaming. It utilizes a static type inference engine to detect potential runtime errors and enforce type safety without requiri

    Analyzes module graphs to identify unused exports and prune unreachable code paths.

    JavaScript
    Ver en GitHub↗1,834
  • svf-tools/svfAvatar de SVF-tools

    SVF-tools/SVF

    1,684Ver en GitHub↗

    SVF is an open-source static program analysis framework and points-to analysis library that tracks memory references, variable aliases, and data dependencies across whole programs. The platform translates compiled intermediate code formats into unified internal representations, constructing constraint graphs, call graphs, and control-flow graphs to model interprocedural execution behavior and memory state. The framework incorporates specialized engines for flow-sensitive, flow-insensitive, and context-sensitive pointer analysis alongside sparse value-flow graph generation. It features memory

    Inspects points-to relationships and program dependence information programmatically using custom driver scripts.

    C++code-analysiscode-securitydependency-analysis
    Ver en GitHub↗1,684
  1. Home
  2. Software Engineering & Architecture
  3. Static Analysis
  4. Module Dependency Analysis

Explorar subetiquetas

  • CoffeeScript ParsingStatic analysis specifically for CoffeeScript source files to identify module relationships. **Distinct from Module Dependency Analysis:** Specializes in CoffeeScript syntax parsing, whereas Module Dependency Analysis is the general process.
  • Graph Filtering2 sub-etiquetasCapabilities to exclude specific nodes or edges from a dependency graph to reduce noise. **Distinct from Module Dependency Analysis:** Focuses on the visual and logical filtering of the graph rather than the analysis of the dependencies themselves.
  • Hierarchical Dependency RestrictionsConstraints that prevent modules in lower directory levels from importing modules in higher directory levels. **Distinct from Module Dependency Analysis:** Distinct from general Module Dependency Analysis by specifically enforcing a top-down directory hierarchy restriction.
  • Instability AnalysisEvaluates the relative stability of modules to validate the stable dependencies principle. **Distinct from Module Dependency Analysis:** Focuses on the stability principle (depending on more stable components) rather than just mapping dependencies.
  • JSDoc Dependency DetectionExtraction of dependency information from JSDoc comments and annotations in JavaScript files. **Distinct from Module Dependency Analysis:** Specifically targets JSDoc annotations for dependency discovery, distinct from standard import statement analysis.
  • Leaf Module Identification1 sub-etiquetaDetection of terminal nodes in a dependency graph that do not import any other modules. **Distinct from Module Dependency Analysis:** Focuses on identifying modules with zero outgoing edges, distinct from identifying unused packages in a manifest.
  • Module Call Analysis1 sub-etiquetaInspection of attributes and arguments within module invocations to detect configuration errors. **Distinct from Module Dependency Analysis:** Analyzes the arguments passed to module calls rather than the dependency graph or circular imports.
  • Module-Scoped Call Graphs1 sub-etiquetaRestrict the call graph to show only functions within a specified module for targeted analysis. **Distinct from Module Dependency Analysis:** Distinct from Module Dependency Analysis: focuses on call graph scoping, not dependency error detection.
  • Orphaned Module DetectionIdentification of source files that are not referenced by any other module in the project. **Distinct from Module Dependency Analysis:** Specifically targets unreferenced source files rather than orphaned database records or cloud storage parts.
  • Path-Pattern Dependency RestrictionsRestrictions on module relationships defined using file or folder path patterns to prevent regressions. **Distinct from Module Dependency Analysis:** More specific than general Module Dependency Analysis by focusing on path-pattern matching for relationship rules.
  • Program Dependence Query EnginesDriver interfaces and query scripts for inspecting program dependencies and points-to relations. **Distinct from Module Dependency Analysis:** Distinct from Module Dependency Analysis: focuses on programmatic querying of fine-grained program dependence using custom driver scripts.
  • Type-Only Import AnalysisDetection of TypeScript type-only imports that are removed during compilation. **Distinct from Module Dependency Analysis:** Focuses on pre-compilation type-level dependencies rather than general runtime module dependencies.
  • Underused Module DetectionIdentifies modules with very few dependents to locate potentially redundant or underutilized utilities. **Distinct from Orphaned Module Detection:** Unlike orphaned module detection which finds zero references, this identifies modules below a configurable threshold of dependents.
  • VisualizationsVisual representations of module dependency graphs used to understand architectural structures. **Distinct from Module Dependency Analysis:** Distinct from Module Dependency Analysis: focuses on the visual rendering and diagrams rather than just detecting errors or circular imports.