Skip to content
PluginStats

vite-plugin-glsl weekly downloads statistics

By UstymUkhman (2 listings) · npm · Vite plugins

Import, inline (and minify) GLSL/WGSL/Slang shader files

View on npm Stale · Oct 17, 2026

vite-plugin-glsl has 77,172 recorded weekly downloads on npm, a decrease of 26.1% over the past 30 days, ranking #480 of 2,256 tracked listings.

Weekly downloads
77,172
Official API · Oct 17, 2026
7-day growth
-50.2%
-77.7K weekly downloads
30-day growth
-26.1%
-27.3K weekly downloads
90-day growth
-32.3%
-36.7K weekly downloads
Rank
#480
Among tracked npm listings

About vite-plugin-glsl

Vite Plugin GLSL

Import, inline (and minify) GLSL/WGSL/Slang shader files

Inspired by threejs-glsl-loader and vite-plugin-string, compatible with Babylon.js, three.js and lygia.

Installation

Usage

With TypeScript

Add extension declarations to your types in tsconfig.json:

or as a package dependency directive to your global types:

With Slang Shaders

Slang shaders are not supported out of the box; however, starting from version 1.6.0, it's quite easy to use them with this plugin. You'll need some minimal setup you can find here to copy-paste in your vite.config file. The idea is to use multiple importKeywords to include Slang shader chunks and convert the output shader to a web-friendly format (like WGSL) by using the onComplete option and the Slang compiler.

Default Options

Example

Will result in:

Change Log

• Starting from v1.6.0 this plugin supports onComplete callback function to customize output shaders. • Starting from v1.5.2 this plugin uses vite.transformWithOxc function when available. • Starting from v1.5.1 this plugin is fully compatible with vite^7.0.0. • Starting from v1.5.0 this plugin supports a custom importKeyword to include shader chunks. • Starting from v1.4.0 compress option was renamed to minify and now it allows a promise callback. • Starting from v1.3.2 this plugin allows to automatically remove already imported chunks with the removeDuplicatedImports option set to true. • Starting from v1.3.1 this plugin is fully compatible with vite^6.0.0. • Starting from v1.3.0 this plugin will not remove comments starting with ///, unless compress option is set to true. • Starting from v1.2.0 this plugin is fully compatible with vite^5.0.0. • Starting from v1.1.1 this plugin has a complete TypeScript support. Check "Usage" > "With TypeScript" for more info. • Starting from v1.0.0 this plugin is fully compatible with vite^4.0.0. • Starting from v0.5.4 this plugin supports custom compress callback function to optimize output shader length after all shader chunks have been included. • Starting from v0.5.0 this plugin supports shaders hot reloading when watch option is set to true. • Starting from v0.4.0 this plugin supports chunk imports from project root and root option to override the default root directory. • Starting from v0.3.0 this plugin is pure ESM. Consider updating your project to an ESM module by adding "type": "module" in your package.json or consult this issue for possible workarounds. • Starting from v0.2.2 this plugin supports compress option to optimize output shader length. You might consider setting this to true in production environment. • Starting from v0.2.0 this plugin uses a config object as a single argument to glsl function and allows to disable import warnings with the warnDuplicatedImports param set to false. • Starting from v0.1.5 this plugin warns about duplicated chunks imports and throws an error when a recursive loop occurres. • Starting from v0.1.2 this plugin generates sourcemaps using vite esbuild when the sourcemap option is set to true. • Starting from v0.1.0 this plugin supports WebGPU shaders with .wgsl extension. • Starting from v0.0.9 this plugin supports optional semicolons at the end of #include statements. • Starting from v0.0.7 this plugin supports optional single and double quotation marks around file names.

Note:

When used with three.js r0.99 and higher, it's possible to include shader chunks as specified in the documentation, those imports will be ignored by vite-plugin-glsl since they are handled internally by the library itself:

Description from the npm listing.

  • vite
  • glsl
  • wgsl
  • lygia
  • webgl
  • webgpu
  • vitejs
  • plugin
  • threejs
  • shaders
  • babylonjs
  • vite-plugin
  • glsl-shaders
  • wgsl-shaders
  • webgl-shaders
  • webgpu-shaders

README badge

Show your rank in a README or on your website. The badge updates automatically.

Charts

Images: 30d · 1y · all time · 1600×900 dark

Adoption over time

vite-plugin-glsl weekly downloads on npm, last 90 days: 77,172 weekly downloads as of Oct 17, 2026, -32.3% over 90 days.vite-plugin-glslWeekly downloads on npm · Last 90 days77,172downloads / week-32.3% over 90 days60K80K100K120K140K160K180KJul 19Aug 3Aug 18Sep 2Sep 17Oct 2Oct 17downloads / weekobservedarchived (Internet Archive)no observationsJul 22, 2026 – Oct 17, 2026 · 88 observations · Updated Oc…pluginstats.com
vite-plugin-glsl weekly downloads on npm, last 90 days: 77,172 weekly downloads as of Oct 17, 2026, -32.3% over 90 days.

7/30/90-day growth

vite-plugin-glsl weekly downloads growth on npm: -50.2% over 7 days, -26.1% over 30 days, -32.3% over 90 days.vite-plugin-glslWeekly downloads growth on npm77,172downloads / week now7-day growth-77,740 weekly downloads-50.2%30-day growth-27,306 weekly downloads-26.1%90-day growth-36,741 weekly downloads-32.3%Growth vs. nearest observation to each baseline date · Updated Oct 17, 2026pluginstats.com
vite-plugin-glsl weekly downloads growth on npm: -50.2% over 7 days, -26.1% over 30 days, -32.3% over 90 days.

Ranking history

vite-plugin-glsl npm ranking history: currently #480 (by weekly downloads).vite-plugin-glslnpm ranking · by weekly downloads · Last 90 days#480current rank#478#479#480#481#482Jul 21Aug 5Aug 20Sep 4Sep 19Oct 4Oct 19rankOct 18, 2026 – Oct 19, 2026 · 2 observations · Updated Oct 17, 2026pluginstats.com
vite-plugin-glsl npm ranking history: currently #480 (by weekly downloads).

Listing placement

All npm2,256 listings · 113 pages · 1,130 shown · page 24, #20 (overall #480)
All npm: every listing in weekly downloads order

Listing placement

Vite plugins250 listings · 13 pages · page 4, #8 (overall #68)
Vite plugins: every listing in weekly downloads order

Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.

Each band is one page of 20. Weekly downloads on a linear scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.

Recent observations

Full history (121)
Recent weekly downloads observations for vite-plugin-glsl
Date (UTC)Weekly downloadsChange vs. previous
77,172-11.1K
88,236-4.8K
93,061-36.1K
129,119-32.5K
161,6450
161,645+5.9K
155,752+840
154,912+4.1K
150,784+13K
137,773+6.9K
130,895+4.3K
126,630-31.3K
157,910-32
157,942—

Similar npm Vite plugins plugins

All 20 vite-plugin-glsl alternatives

Data source

Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.

Listing: https://www.npmjs.com/package/vite-plugin-glsl. First seen Oct 16, 2026; last successful collection Oct 19, 2026. See the methodology.