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

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
eirslett avatar

eirslett/frontend-maven-plugin

0
View on GitHub↗
4,368 stars·874 forks·Java·Apache-2.0·21 views

Frontend Maven Plugin

This project is a Maven plugin that integrates Node.js and npm build processes into the Java build lifecycle. It acts as a build orchestrator and environment manager, allowing the execution of npm scripts and frontend task runners during a Java project's build process.

The plugin manages the downloading and extraction of specific Node.js and npm binaries into local project directories. This ensures consistent, cross-platform build environments by resolving binaries based on the host operating system and CPU architecture without modifying the global system state.

It provides orchestration for frontend toolchains, including the execution of package managers, test runners, and script automation. The system supports environment variable injection, network proxy configuration for restricted environments, and binary download caching to reduce network overhead.

Integration with integrated development environments provides support for incremental builds to prevent unnecessary task execution.

Features

  • Build Orchestration Tools - Orchestrates the execution of external frontend task runners and build tools within the Java build process.
  • Maven Frontend Integrations - Integrates Node.js and npm build processes directly into the Maven project lifecycle.
  • Package Manager Orchestrations - Integrates npm installation and dependency management directly into the Maven build lifecycle.
  • Frontend Build Tools - Executes standard frontend utilities for tasks such as minification, packaging, and bundling.
  • Build Orchestrators - Triggers JavaScript build tools and test runners like Grunt, Gulp, and Karma during Java builds.
  • Local Runtime Provisioning - Automates the installation of specific Node.js runtime versions into local project directories.
  • Frontend Build Pipelines - Automates the execution of npm, Grunt, or Gulp scripts to compile assets as part of the Java build.
  • Frontend Script Executions - Runs npm and yarn scripts within a controlled environment using pre-configured system paths.
  • Maven Frontend Plugins - Provides a Maven plugin that integrates non-Java frontend toolchains into the project lifecycle.
  • Cross-Platform Tooling Management - Manages compatible Node.js and npm binaries across different operating systems and CPU architectures.
  • Build Environment Configurations - Configures project-specific working directories and environment variables to ensure consistent build outcomes.
  • Local Runtime Installations - Provisions specific versions of Node.js and npm into local directories for build consistency.
  • Cross-Platform Runtime Support - Provides compatible precompiled binaries across various operating systems and CPU architectures.
  • Platform-Specific Artifact Resolution - Automatically resolves the correct Node.js binary based on the host operating system and CPU architecture.
  • Node.js Version Managers - Manages the installation and switching of Node.js and npm versions locally within the project.
  • Isolated Runtime Directories - Installs runtimes into project-local directories to ensure consistent environments without affecting the global system.
  • Lifecycle Phase Binding - Binds frontend tool execution to specific phases of the Maven build lifecycle.
  • Binary Download Caches - Caches downloaded Node.js and npm binaries locally to prevent redundant network requests during builds.
  • NPM Script Runners - Executes npm installation and custom scripts as part of the Maven build process.
  • Runtime Environment Variable Injections - Injects runtime environment variables into the processes that execute frontend build tools.
  • Binary Archive Installation - Provides the capability to download pre-built runtime binaries and unpack them into the project directory for immediate use.
  • Node.js CI Environment Setups - Provides configuration for Node.js environments in CI pipelines, including network proxy and environment variable settings.
  • Shell Environment Injections - Injects custom environment variables and proxy settings into the shell process executing frontend tools.
  • Test Execution and Orchestration - Orchestrates the execution of JavaScript test suites with support for skipping tests via build flags.

Star history

Star history chart for eirslett/frontend-maven-pluginStar history chart for eirslett/frontend-maven-plugin

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does eirslett/frontend-maven-plugin do?

This project is a Maven plugin that integrates Node.js and npm build processes into the Java build lifecycle. It acts as a build orchestrator and environment manager, allowing the execution of npm scripts and frontend task runners during a Java project's build process.

What are the main features of eirslett/frontend-maven-plugin?

The main features of eirslett/frontend-maven-plugin are: Build Orchestration Tools, Maven Frontend Integrations, Package Manager Orchestrations, Frontend Build Tools, Build Orchestrators, Local Runtime Provisioning, Frontend Build Pipelines, Frontend Script Executions.

Which projects share features with eirslett/frontend-maven-plugin?

Projects with overlapping indexed features include: kriswallsmith/assetic — Assetic is a frontend build tool and asset pipeline manager for PHP applications. It functions as a static asset… creationix/nvm — nvm is a Node.js version manager implemented as a POSIX bash script. It serves as a shell environment manager and… actions/setup-node — setup-node is a GitHub Action that downloads, installs, and configures a specified Node.js runtime in continuous… rbenv/rbenv — rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple… google/wireit — Wireit is a build system orchestrator and npm script task runner that manages complex dependencies between scripts. It… zkat/npx — npx is a tool that combines Node version management, on-demand package running, caching installation, remote…

Projects sharing features with Frontend Maven Plugin

These projects share indexed features with Frontend Maven Plugin. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • creationix/nvmcreationix avatar

    creationix/nvm

    93,948View on GitHub↗

    nvm is a Node.js version manager implemented as a POSIX bash script. It serves as a shell environment manager and runtime orchestrator for installing, switching, and managing multiple versions of the Node.js runtime on POSIX systems. The tool allows for the automation of runtime switching by reading configuration files in project directories to select the required version. It supports the management of long-term support releases and the migration of global packages between different installed versions of the runtime. The project covers broader capabilities including runtime management throug

    Shell
    View on GitHub↗93,948
  • kriswallsmith/assetickriswallsmith avatar

    kriswallsmith/assetic

    3,716View on GitHub↗

    Assetic is a frontend build tool and asset pipeline manager for PHP applications. It functions as a static asset optimizer and compiler that transforms, organizes, and exports CSS and JavaScript files to disk for service by a web server. The system uses a filter-based transformation pipeline to convert preprocessor languages into standard web formats and minify code for production environments. It incorporates a versioning system that assigns unique timestamps or identifiers to filenames to prevent browsers from loading outdated cached assets. The tool manages static file bundling by merging

    PHP
    View on GitHub↗3,716
  • actions/setup-nodeactions avatar

    actions/setup-node

    4,655View on GitHub↗

    setup-node is a GitHub Action that downloads, installs, and configures a specified Node.js runtime in continuous integration workflows. It resolves version specifiers from semantic version ranges or aliases like "lts/*" against a remote manifest, selects the correct binary for the runner’s operating system and architecture, and can reuse previously installed versions from GitHub’s hosted tool cache. The action accelerates repeat workflow runs by caching global package dependencies using a lock file as the cache key, restoring them automatically on subsequent runs. It manages version resolutio

    TypeScript
    View on GitHub↗4,655
  • rbenv/rbenvrbenv avatar

    rbenv/rbenv

    16,710View on GitHub↗

    rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple versions of the Ruby programming language. It functions as a project runtime isolator and an extensible versioning framework that ensures the correct Ruby binaries are executed based on the current context. The system uses a shim-based command interception model to resolve the active version before delegating execution to the binary. It allows for locking specific Ruby versions and environment variables to individual directories, ensuring project environment isolation. The ar

    Shellbashrubyruby-installation
    View on GitHub↗16,710
Compare all 30 related projects→