vite-plugin-version-mark
TypeScript icon, indicating that this package has built-in type declarations

0.0.13 • Public • Published

中文 | English

vite-plugin-version-mark

Automatically insert the version or git_commit_sha in your Vite/Nuxt project.

npm version npm downloads types License

Vite Nuxt

Awesome

Demo

demo screen shot

Install

yarn add -D vite-plugin-version-mark
# OR npm install -D vite-plugin-version-mark

Usage

Vite

// vite.config.ts
import {defineConfig} from 'vite'
import {vitePluginVersionMark} from 'vite-plugin-version-mark'

export default defineConfig({
  plugins: [
    vitePluginVersionMark({
      // name: 'test-app',
      // version: '0.0.1',
      // command: 'git describe --tags',
      // ifGitSHA: true,
      ifShortSHA: true,
      ifMeta: true,
      ifLog: true,
      ifGlobal: true,
    })
  ],
})

Nuxt3+

// nuxt.config.ts
export default defineNuxtConfig({
  modules: [
    ['vite-plugin-version-mark/nuxt', {
      // name: 'test-app',
      // version: '0.0.1',
      // command: 'git describe --tags',
      // ifGitSHA: true, 
      ifShortSHA: true, 
      ifMeta: true, 
      ifLog: true, 
      ifGlobal: true,
    }]
  ],
})

Then you can use vite-plugin-version-mark ! 🎉

Config

vite-plugin-version-mark can be print application version in the Console, defined global or add <meta> in HTML element.

Name Description Type Default Supported
name application name string name in package.json 0.0.1+
version application version string version in package.json 0.0.1+
ifGitSHA use git commit SHA as the version boolean false 0.0.1+
ifShortSHA use git commit short SHA as the version boolean false 0.0.1+
command provide a custom command to retrieve the version
For example: git describe --tags
string git rev-parse --short HEAD 0.0.8+
ifLog print info in the Console boolean true 0.0.1+
ifGlobal set a variable named `__${APPNAME}_VERSION__` in the window
For TypeScript users, make sure to add the type declarations in the env.d.ts or vite-env.d.ts file to get type checks and Intellisense.
boolean true 0.0.4+
ifMeta add <meta name="application-name" content="{APPNAME_VERSION}: {version}"> in the <head> boolean true 0.0.1+
ifExport export the version field in the entry file. This may be used when you use vite to build a library mode.
Through import { {APPNAME}_VERSION } from <your_library_name>
boolean false 0.0.11+

The version field takes precedence: command > ifShortSHA > ifGitSHA > version

Other

How to get the version in your vitePlugin?

// vite.config.ts

import {defineConfig} from 'vite'
import type {Plugin} from 'vite'
import {vitePluginVersionMark} from 'vite-plugin-version-mark'

const yourPlugin: () => Plugin = () => ({
  name: 'test-plugin',
  config (config) {
    // get version in vitePlugin if you open `ifGlobal`
    console.log(config.define)
  }
})

export default defineConfig({
  plugins: [
    vue(),
    vitePluginVersionMark({
      ifGlobal: true,
    }),
    yourPlugin(),
  ],
})

View CHANGELOG

Package Sidebar

Install

npm i vite-plugin-version-mark

Weekly Downloads

907

Version

0.0.13

License

MIT

Unpacked Size

43.1 kB

Total Files

12

Last publish

Collaborators

  • zhongxuyang