28 repositorios
Extensible frameworks that allow custom logic to intercept and modify the build resolution pipeline.
Distinguishing note: Specifically for build-system integration and module resolution, distinct from general-purpose application plugin systems.
Explore 28 awesome GitHub repositories matching development tools & productivity · Build Plugin Architectures. Refine with filters or upvote what's useful.
esbuild is a high-performance JavaScript bundler and transpiler designed to transform modern web assets into production-ready code. Built with a focus on speed, it utilizes a concurrent execution model to perform parsing, linking, and code generation across multiple CPU cores. The engine handles a wide range of tasks, including TypeScript compilation, JSX transformation, and CSS bundling, while maintaining a consistent build process across diverse environments. What distinguishes the project is its architecture, which leverages memory-mapped file processing and a single-pass transformation st
Allows custom logic to intercept module path lookups and file loading, enabling integration with external build systems and virtual modules.
Rollup is an ES module bundler and JavaScript module transpiler. It functions as a build tool that combines JavaScript modules into optimized files and converts modern JavaScript and JSX into various output formats for different runtime environments. The project is distinguished by its static-analysis tree shaking engine, which removes unused code and dead exports to minimize bundle size. It also acts as a code splitting orchestrator, partitioning modules into separate chunks to optimize network requests and load times. The tool provides a hook-based plugin system for extending build logic,
Provides an extensible framework allowing custom logic to intercept and modify the build resolution pipeline.
CSS Modules is a build-time tool that transforms local class names into unique, collision-resistant identifiers. By scoping styles to specific components during the compilation phase, it ensures that visual definitions remain isolated and prevents naming conflicts within web applications. The project functions as a frontend build plugin that integrates with module bundlers to manage style dependencies and assets. It generates a JavaScript object mapping that links original local class names to their transformed global counterparts, allowing developers to reference styles programmatically with
Integrates with module bundlers to resolve style dependencies and export class mappings for programmatic access.
Umi is a comprehensive React application framework and enterprise frontend toolchain. It provides a plugin-based build system and a configuration-driven routing engine to integrate routing, build tooling, and deployment within a single dependency. The project serves as a micro-frontend orchestrator, coordinating multiple independent frontend applications into a single interface with shared data flow. Its extensible architecture allows for the customization of every stage of the application development lifecycle through a system of plugins. The framework covers a broad range of enterprise cap
Implements an extensible build architecture that allows custom logic to intercept and modify the build resolution pipeline.
JSDoc is a JavaScript API documentation generator that parses comments in source code to produce structured documentation files for a project interface. It functions as a source code documentation tool that extracts metadata from code comments to automate the creation of technical API references. The system operates as a template-based documentation engine, supporting external templates to customize the visual presentation and layout of the output. It also serves as a Markdown documentation exporter, transforming extracted documentation into Markdown files for use on alternative publishing pl
Provides a centralized configuration system to define source paths, output targets, and template preferences.
React is a JavaScript library for building user interfaces through the composition of modular, self-contained components. It employs a declarative programming model where developers describe the desired visual state, and the library automatically manages the underlying document updates and state synchronization. By utilizing a virtual representation of the document, it calculates and applies minimal changes to the browser, ensuring efficient rendering even in complex applications. The library distinguishes itself through a sophisticated scheduling system that manages rendering work in increme
Allows configuration of projects from the ground up to maintain full control over build processes.
This project is a configuration utility and JavaScript bundler manager designed to extend build scripts and override settings for Create React App applications. It functions as a tool for modifying Webpack configurations without requiring a permanent ejection from the managed build system. The utility allows for the customization of development and production build settings, enabling the use of custom build scripts to redefine project entry points. It provides mechanisms to modify the default build and development server settings to fit specific project requirements. Capability areas include
Provides a way to inject custom modifications into the internal build configuration object before execution.
Craco is a configuration layer for Create React App that modifies Webpack and Jest settings without requiring the project to eject. It functions as a build tool plugin system and configuration manager, allowing for the injection of custom settings and third-party logic into the frontend build pipeline. The project utilizes a hook-based architecture and non-destructive configuration merging to override default settings. This allows for Webpack configuration overrides and Jest configuration tuning while maintaining the original source files. The system covers a broad range of build pipeline ex
Provides a hook-based architecture for adding third-party logic and extensions to a frontend build pipeline.
Hatch is a unified tool for managing Python environments, building packages, scaffolding projects, and installing Python versions. It provides a single command-line interface for automating common development workflows, including running scripts, tests, and static analysis with automatic dependency resolution and configuration. The tool manages project settings, dependencies, and build instructions through a declarative TOML configuration file, ensuring reproducibility across environments. It creates and manages isolated virtual environments across all major shells, installs and manages multi
Ships a plugin-based build system that allows custom build steps and output formats via extensible backends.
This is an open-source Android application that serves as a reference implementation for modern app architecture. It demonstrates a modular, testable structure built with Kotlin, Coroutines, and Jetpack libraries, organized into independent feature modules that each follow Clean Architecture and the MVVM pattern. The project enforces coding standards through an automated static analysis pipeline that integrates linting, formatting checks, and code quality tools directly into the build process, failing the build on any violations. It uses reusable Gradle convention plugins to standardize build
Encapsulates shared Gradle configuration into reusable convention plugins, reducing duplication and enforcing consistency.
Generate Java types from JSON or JSON Schema and annotate those types for data-binding with Jackson, Gson, etc
Integrates JSON Schema to Java type generation into Gradle builds as an automated build step.
Spotless es un orquestador de formateo multilenguaje y plugin de Gradle que automatiza el estilo de código en varios lenguajes de programación dentro de un único pipeline de construcción. Funciona como un coordinador para múltiples formateadores de terceros, una herramienta de linting de estilo de código y un sistema para insertar y actualizar encabezados de licencia estandarizados. El proyecto se distingue por la aplicación de estilo integrada en git, utilizando hooks de pre-push y referencias de git para aplicar el formateo solo a archivos o líneas modificadas. Admite configuraciones de construcción compartidas, permitiendo que las reglas de formateo se distribuyan y carguen en múltiples proyectos mediante artefactos remotos para mantener una única fuente de verdad. La herramienta cubre una amplia gama de capacidades, incluyendo la transformación de texto de código fuente mediante expresiones regulares y parches JSON, gestión de importaciones y estandarización de espacios en blanco. Se integra con una amplia gama de binarios y herramientas externas para lenguajes como Java, Python, Kotlin, C++, Go y TypeScript. La funcionalidad adicional incluye la verificación de formateo para garantizar la idempotencia y la optimización incremental para omitir archivos sin cambios.
Provides a Gradle plugin that automates multi-language code styling and formatting using integrated third-party tools.
Esta es una extensión de Visual Studio Code que integra el motor de formateo Prettier en el editor. Sirve como puente para proporcionar un estilo de código opinado y multi-lenguaje, reimprimiendo el código fuente a partir de un árbol de sintaxis para imponer un diseño y ajuste de línea consistentes. La extensión permite el formateo automatizado al guardar o mediante comandos, asegurando un código base uniforme en los equipos. Resuelve las reglas de estilo fusionando las preferencias del editor, archivos EditorConfig y archivos de configuración locales, y puede coordinarse con linters para resolver reglas estilísticas conflictivas. El sistema soporta una amplia gama de lenguajes de programación y formatos de marcado, con la capacidad de ampliar el soporte de lenguajes mediante plugins y mapeo de extensiones de archivo personalizadas. Gestiona la resolución de versiones del formateador priorizando las instalaciones locales del proyecto sobre las versiones integradas y rastrea las posiciones del cursor para mantener la ubicación del caret después de las modificaciones de código.
Allows the extension of language support by loading external formatting plugins from project dependencies.
Este proyecto es un framework integral para la programación literaria que permite a los desarrolladores construir bibliotecas de Python listas para producción completamente dentro de Jupyter Notebooks. Al tratar los notebooks como la fuente principal de verdad, integra código, documentación y pruebas en un pipeline de desarrollo unificado que se exporta directamente a módulos estándar de Python. El framework se distingue por herramientas especializadas diseñadas para superar los desafíos inherentes del uso de notebooks en la ingeniería de software profesional. Incluye hooks de Git personalizados y controladores de fusión que desinfectan los metadatos volátiles de los notebooks, eliminando eficazmente las diferencias ruidosas y resolviendo conflictos de fusión. Además, utiliza directivas basadas en celdas para controlar la visibilidad del código, las pruebas y la generación de documentación, permitiendo a los desarrolladores mantener un código fuente limpio y modular mientras trabajan en un entorno interactivo. Más allá de su flujo de trabajo de desarrollo central, el proyecto proporciona un sólido conjunto de herramientas de automatización para todo el ciclo de vida del software. Esto incluye un motor de sitio estático para renderizar documentación de grado de publicación con soporte para ecuaciones matemáticas y referencias cruzadas de símbolos, así como utilidades para gestionar dependencias del proyecto, versiones y pruebas automatizadas. También admite flujos de trabajo de integración continua para desplegar documentación y publicar paquetes en registros estándar. El proyecto proporciona un proceso de arranque estandarizado para inicializar nuevos repositorios con pipelines preconfigurados para pruebas, documentación y control de versiones.
Generates documentation configuration files based on settings defined in the main project configuration.
postcss-cssnext es una suite de plugins de PostCSS y transpiler diseñado para convertir características modernas de CSS y sintaxis emergente en código compatible con navegadores web antiguos. Funciona como un motor de polyfill que añade propiedades de respaldo y reemplaza unidades modernas para asegurar un renderizado consistente en diferentes entornos de navegador. La herramienta automatiza la conversión de especificaciones CSS avanzadas en estilos estándar empleando un motor de transformación para características emergentes como anidamiento y selectores avanzados. También incluye una utilidad para convertir unidades rem relativas en valores de píxeles basados en tamaños de fuente raíz definidos. El proyecto se integra en pipelines de desarrollo mediante una interfaz de línea de comandos que soporta el monitoreo de archivos y la configuración de navegadores objetivo. Estos flujos de trabajo utilizan una lista de compatibilidad de navegadores para determinar qué transformaciones son necesarias para los objetivos especificados.
Provides a CLI to control the transformation process, including target browser lists and file watching.
Laravel Mix es un pipeline de activos de frontend y herramienta de construcción de JavaScript que funciona como un envoltorio para Webpack. Proporciona un sistema de configuración declarativo para simplificar la compilación y el empaquetado de activos de JavaScript y CSS. La herramienta se centra en la simplificación del flujo de trabajo de Webpack, permitiendo a los usuarios gestionar pipelines de construcción complejos sin escribir archivos de configuración extensos desde cero. Utiliza una API de interfaz fluida para definir pasos de construcción y reglas de transformación de activos. El sistema cubre el empaquetado de activos web modernos, incluyendo la transpilación de módulos de JavaScript y la integración de preprocesadores de CSS para Sass y Less. También gestiona la compilación de activos listos para producción mediante procesamiento basado en plugins y mapeo de fuentes (source mapping) automático.
Acts as a functional wrapper that simplifies complex Webpack configurations through a declarative API.
Maven es una herramienta de automatización de compilación de Java y un orquestador de builds. Funciona como un gestor del ciclo de vida del proyecto y un sistema de gestión de dependencias, utilizando un modelo de objeto de proyecto estandarizado para compilar, probar y empaquetar proyectos Java. El proyecto se distingue por un ciclo de vida de compilación basado en fases y un modelo de extensión basado en plugins, permitiendo a los usuarios vincular objetivos personalizados a etapas específicas de la compilación. Coordina software complejo mediante la orquestación de proyectos multimodulares y asegura un flujo de trabajo de compilación reproducible al neutralizar variables de entorno y controlar las versiones de las toolchains. Sus capacidades cubren una gestión integral de dependencias, incluyendo la resolución de dependencias transitivas y la publicación de artefactos en repositorios remotos. El sistema también proporciona generación de proyectos mediante plantillas y generación de documentación detallada para producir referencias de API y sitios de proyectos. La herramienta incluye una interfaz de línea de comandos con autocompletado y admite la ejecución de compilaciones offline utilizando una caché local de artefactos.
Provides a plugin-based architecture that allows custom build goals to be bound to specific lifecycle phases.
Este proyecto es una colección de gráficos vectoriales escalables diseñados para interfaces web. Se distribuye como una librería de iconos SVG disponible a través de gestores de paquetes como un paquete de Node.js y una gema de Ruby. El conjunto proporciona gráficos vectoriales plug-and-play que pueden importarse en aplicaciones web y estilizarse mediante CSS para ajustar el tamaño, el color y el diseño. La librería admite la integración mediante plugins de ejecutores de tareas y renderizado basado en plantillas para gestionar activos dentro de los pipelines de desarrollo.
Includes Gulp and Grunt plugins to automate the injection of icons into the development pipeline.
Este repositorio sirve como fuente de documentación técnica para el ecosistema .NET. Consiste en una colección de guías conceptuales y referencias técnicas escritas en Markdown, actuando como la fuente de contenido de sitio estático para un portal de documentación pública. El proyecto utiliza un sistema de gestión de contenido basado en Git para manejar la escritura técnica a través de pull requests y tuberías de construcción automatizadas. Se distingue por una infraestructura especializada que agrega contenido y muestras de múltiples repositorios y ramas en una única salida unificada. El sistema cubre una amplia gama de capacidades del ciclo de vida de la documentación, incluyendo publicación automatizada, organización basada en metadatos y control de versiones para eliminar contenido de software obsoleto. Incorpora herramientas de validación para enlaces y metadatos de markdown, así como utilidades de gobernanza para escaneo de dependencias basado en licencias y detección de fugas de secretos. La automatización administrativa se maneja a través de herramientas para etiquetado de problemas, coordinación de pull requests y redirección de URL basada en rutas para gestionar migraciones de contenido.
Defines how source files and assets are processed using inclusion patterns and destination paths for documentation.
unplugin-icons is a build-time plugin that integrates with modern bundlers to import icons from popular icon sets automatically. It detects icon usage in source code and tree-shakes the final bundle to include only the icons actually referenced, reducing unnecessary payload. The plugin also provides a mechanism for loading custom SVG icon collections from local files or remote sources, making them accessible through the same import syntax as built-in sets. The plugin is framework-agnostic and offers a conventional path resolution scheme for referencing icons by collection and name across diff
Provides a single API that adapts to multiple build tools via a shared plugin interface.