28 个仓库
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 is a multi-language formatting orchestrator and Gradle plugin that automates code styling across various programming languages within a single build pipeline. It functions as a coordinator for multiple third-party formatters, a code style linting tool, and a system for inserting and updating standardized license headers. The project distinguishes itself through git-integrated style enforcement, using pre-push hooks and git references to apply formatting only to modified files or lines. It supports shared build configurations, allowing formatting rules to be distributed and loaded acr
Provides a Gradle plugin that automates multi-language code styling and formatting using integrated third-party tools.
这是一个将 Prettier 格式化引擎集成到编辑器中的 Visual Studio Code 扩展。它作为一座桥梁,通过从语法树重新打印源代码来强制执行一致的布局和换行,从而提供主观的、多语言的代码样式。 该扩展支持在保存时或通过命令自动格式化,确保团队间代码库的统一。它通过合并编辑器首选项、EditorConfig 文件和本地配置文件来解析样式规则,并能与 linter 协调以解决冲突的样式规则。 该系统支持广泛的编程语言和标记格式,并能够通过插件和自定义文件扩展名映射扩展语言支持。它通过优先考虑项目本地安装而非捆绑版本来处理格式化程序版本解析,并跟踪光标位置以在代码修改后保持插入符位置。
Allows the extension of language support by loading external formatting plugins from project dependencies.
该项目是一个全面的文学编程(literate programming)框架,使开发者能够完全在 Jupyter Notebooks 中构建生产就绪的 Python 库。通过将 Notebooks 视为单一事实来源,它将代码、文档和测试集成到一个统一的开发流水线中,并直接导出到标准 Python 模块。 该框架通过专门设计的工具脱颖而出,旨在克服在专业软件工程中使用 Notebooks 的固有挑战。它包括自定义 Git 钩子和合并驱动程序,用于清理易变的 Notebook 元数据,有效消除嘈杂的差异并解决合并冲突。此外,它利用基于单元格的指令来控制代码可见性、测试和文档生成,允许开发者在交互式环境中工作时保持干净、模块化的源代码。 除了核心开发工作流外,该项目还为整个软件生命周期提供了一套强大的自动化工具。这包括一个用于渲染出版级文档的静态站点引擎(支持数学公式和符号交叉引用),以及用于管理项目依赖项、版本控制和自动化测试的工具。它还支持用于部署文档和将包发布到标准注册表的持续集成工作流。 该项目提供了一个标准化的引导过程,用于初始化具有预配置测试、文档和版本控制流水线的新仓库。
Generates documentation configuration files based on settings defined in the main project configuration.
postcss-cssnext 是一个 PostCSS 插件套件和转译器,旨在将现代 CSS 特性和新兴语法转换为与旧版 Web 浏览器兼容的代码。它作为一个 Polyfill 引擎,添加回退属性并替换现代单位,以确保在不同浏览器环境中实现一致的渲染。 该工具通过采用针对嵌套和高级选择器等新兴特性的转换引擎,实现了将高级 CSS 规范自动转换为标准样式。它还包括一个用于根据定义的根字体大小将相对 rem 单位转换为像素值的实用程序。 该项目通过支持文件监视和目标浏览器配置的命令行界面集成到开发流水线中。这些工作流使用浏览器兼容性列表来确定指定目标所需的转换。
Provides a CLI to control the transformation process, including target browser lists and file watching.
Laravel Mix is a frontend asset pipeline and JavaScript build tool that functions as a wrapper for Webpack. It provides a declarative configuration system to simplify the compilation and bundling of JavaScript and CSS assets. The tool focuses on Webpack workflow simplification, allowing users to manage complex build pipelines without writing extensive configuration files from scratch. It uses a fluent interface API to define build steps and asset transformation rules. The system covers modern web asset bundling, including JavaScript module transpilation and CSS preprocessor integration for S
Acts as a functional wrapper that simplifies complex Webpack configurations through a declarative API.
Maven 是一个 Java 构建自动化工具和软件构建编排器。它作为一个项目生命周期管理器和依赖管理系统,使用标准化的项目对象模型(POM)来编译、测试和打包 Java 项目。 该项目以基于阶段的构建生命周期和基于插件的扩展模型为特色,允许用户将自定义目标绑定到特定的构建阶段。它通过多模块项目编排来协调复杂的软件,并通过中和环境变量和控制工具链版本来确保可重复的构建工作流。 其功能涵盖全面的依赖管理,包括传递依赖解析和向远程仓库发布构件。该系统还通过模板提供项目生成,并为生成 API 参考和项目站点提供详细的文档生成功能。 该工具包含一个带有输入补全功能的命令行界面,并支持使用本地构件缓存进行离线构建执行。
Provides a plugin-based architecture that allows custom build goals to be bound to specific lifecycle phases.
该项目是为 Web 界面设计的可缩放矢量图形集合。它作为 SVG 图标库分发,可通过包管理器作为 Node.js 包和 Ruby gem 获取。 该集合提供即插即用的矢量图形,可以导入到 Web 应用程序中,并使用 CSS 进行样式设置以调整大小、颜色和布局。 该库支持通过任务运行器插件和基于模板的渲染进行集成,以管理开发流水线中的资产。
Includes Gulp and Grunt plugins to automate the injection of icons into the development pipeline.
该仓库是 .NET 生态系统的技术文档源。它由一系列用 Markdown 编写的概念指南和技术参考组成,作为公共文档门户的静态站点内容源。 该项目利用基于 Git 的内容管理系统,通过 Pull Request 和自动化构建管道来处理技术写作。它通过一种专门的基础设施脱颖而出,该基础设施将来自多个仓库和分支的内容与示例聚合到一个统一的输出中。 该系统涵盖了广泛的文档生命周期能力,包括自动化发布、基于元数据的组织,以及用于移除过时软件内容的版本控制。它集成了用于 Markdown 链接和元数据的验证工具,以及用于基于许可证的依赖扫描和密钥泄露检测的治理工具。 管理自动化通过用于 Issue 标签、Pull Request 协调以及基于路径的 URL 重定向以管理内容迁移的工具进行处理。
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.