Registry / devops / vite-plugin-build-metadata

vite-plugin-build-metadata

JSON →
library1.2.0jsnpmunverified

This Vite plugin is designed to automatically inject build-time metadata into a `meta.json` file placed in your project's output directory after each build. Currently at version 1.2.0, it maintains an active but irregular release cadence, with recent updates focusing on bug fixes and module resolution enhancements. Its primary function is to provide essential deployment tracking information, including a unique `buildHash`, the `commitHash` from your VCS, and the `date` of the build. This simplicity and focused approach differentiate it by offering a straightforward mechanism for version verification and debugging in production environments, making it useful for tracking application deployments without complex configurations.

npm install vite-plugin-build-metadata
INSTALL
IMPORT
SIG · VITE-PLUGIN-BUILD-
V
vite-plugin-build-metadata
devopsjavascriptv1.2.0
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

VitePluginBuildMetadata
import VitePluginBuildMetadata from 'vite-plugin-build-metadata';
import { VitePluginBuildMetadata } from 'vite-plugin-build-metadata';
The plugin is a default export, not a named one. Configuration typically happens in `vite.config.ts` using ESM syntax.
VitePluginBuildMetadata
import VitePluginBuildMetadata from 'vite-plugin-build-metadata';
const VitePluginBuildMetadata = require('vite-plugin-build-metadata');
While CommonJS might resolve in some setups due to the `exports` field, Vite configuration files are typically ESM, making the `import` statement the idiomatic and recommended approach.
Options
import type { Options } from 'vite-plugin-build-metadata';
import { Options } from 'vite-plugin-build-metadata';
For TypeScript users, the plugin's configuration options type can be imported for enhanced type checking. It's a type-only import.

This quickstart demonstrates how to configure `vite-plugin-build-metadata` in your `vite.config.ts` and optionally access the generated `app-meta.json` file in a client-side application.

import { defineConfig } from 'vite'; import VitePluginBuildMetadata from 'vite-plugin-build-metadata'; export default defineConfig({ plugins: [ VitePluginBuildMetadata({ filename: 'app-meta.json' // Customizes the output filename }), ], build: { // Ensure a production build to trigger the plugin minify: true, outDir: 'dist' // Default output directory } }); // Example of accessing the generated metadata in a frontend app (client-side context): // For a real application, you'd fetch this file after deployment. /* async function fetchBuildMetadata() { try { const response = await fetch('/app-meta.json'); // Adjust path as needed if (!response.ok) { throw new Error(`HTTP error! status: ${response.status}`); } const metadata = await response.json(); console.log('Build Metadata:', metadata); // Example: Display on UI or use for logging document.getElementById('build-info').innerText = `Build: ${metadata.buildHash}, Commit: ${metadata.commitHash}, Date: ${metadata.date}`; } catch (error) { console.error('Failed to fetch build metadata:', error); } } // Call this function when your application initializes // fetchBuildMetadata(); */
Debug
Known issues
gotchaThe `vite-plugin-build-metadata` plugin is exported as a default export, meaning it should be imported without curly braces. Incorrectly using named import syntax will result in a runtime error.
fix
Change `import { VitePluginBuildMetadata } from 'vite-plugin-build-metadata'` to `import VitePluginBuildMetadata from 'vite-plugin-build-metadata'` in your Vite configuration file.
affects: *
breakingThis plugin declares a peer dependency on Vite versions `^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0`. Using it with an unsupported Vite version (e.g., Vite 2.x) may lead to unexpected behavior, build failures, or plugin non-operation.
fix
Ensure your project's Vite version satisfies the `peerDependencies` range specified. Upgrade Vite if necessary, or consider using an older version of this plugin compatible with your Vite installation.
affects: <3.0.0
gotchaPrior to version `0.4.0`, the package lacked an `exports` field in its `package.json`. This could lead to module resolution issues, especially in environments with strict ESM/CJS interoperability rules or specific bundler configurations.
fix
Upgrade `vite-plugin-build-metadata` to version `0.4.0` or newer to ensure proper module resolution across different environments and better compatibility with modern Node.js and bundler setups.
affects: <0.4.0
Errors
Common errors & fixes
TypeError: (0 , vite_plugin_build_metadata__WEBPACK_IMPORTED_MODULE_0__.VitePluginBuildMetadata) is not a function
Attempting to use `VitePluginBuildMetadata` as a named export when it is a default export in the `vite.config.js` or `vite.config.ts` file.
fix
Modify your import statement from `import { VitePluginBuildMetadata } from 'vite-plugin-build-metadata';` to `import VitePluginBuildMetadata from 'vite-plugin-build-metadata';`.
Error: [vite] The plugin 'vite-plugin-build-metadata' didn't return a plugin object. Did you forget to call it?
The plugin function `VitePluginBuildMetadata` was imported but not called as a function when added to the `plugins` array in `vite.config.js`.
fix
Ensure you invoke the plugin function when adding it to the configuration: `plugins: [VitePluginBuildMetadata()]` instead of `plugins: [VitePluginBuildMetadata]`.
Cannot find module 'vite-plugin-build-metadata' or its corresponding type declarations.
The package is not installed as a development dependency, or there's a module resolution issue, potentially due to incorrect `exports` field handling in older versions or specific project setups.
fix
First, ensure the package is installed: `pnpm i vite-plugin-build-metadata -D` (or `npm install --save-dev vite-plugin-build-metadata`, `yarn add -D vite-plugin-build-metadata`). If the issue persists, verify you are using version `0.4.0` or newer which includes a robust `exports` field.
Upgrade
Version history
1.2.0latest on npm
Audit
Dependencies
viterequiredRequired peer dependency for Vite plugin functionality.
Agent activity
2 hits · last 30 days
node
2
Resources
vite-plugin-build-metadata — npm install vite-plugin-build-metadata · libregistry