npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@decodelabs/vite-plugin-zest

v0.3.2

Published

Vite plugin for DecodeLabs Zest PHP integration

Downloads

30

Readme

Zest Vite Plugin

Usage

This plugin creates PHP config and manifest files that the main Zest library can consume. Ensure this plugin is installed in your Zest/Vite project to enable front end integration works as expected.

npm install -D @decodelabs/vite-plugin-zest

Apply the plugin using the usual Vite plugin configuration - use the buildOnExit option to trigger a Zest build when Vite dev server exits.

import zest from '@decodelabs/vite-plugin-zest'
import { defineConfig } from 'vite'

export default defineConfig({
  plugins: [
    zest({
      buildOnExit: true
    })
  ],
})

Merge to public dir

If you are using Zest in a standard server environment project which uses the contents of the git repository as the source of truth without a build step, you can merge the Zest build output into the public directory.

import zest from '@decodelabs/vite-plugin-zest'
import { defineConfig } from 'vite'

export default defineConfig({
  plugins: [
    zest({
      mergeToPublicDir: true
    })
  ],
})

This will alter your config to allow Zest to build directly into a subdirectoy of the public directory based on your outDir setting. Under normal circumstances Vite will either break URLs to processed assets or public assets depending on whether your base is absolute or relative - the plugin updates URLs as necessary to ensure they remain valid.

It will also inject your relative assets dir base into the modulepreload block in exported js files to ensure dynamic imports resolve correctly.

Public file cache buster

Vite does not currently add hashes to URLs pointing to public assets in generated chunks. This can cause issues with stale assets being served from the browser cache. To work around this, you can enable the publicCacheBuster option, which will append a query parameter to URLs pointing to public assets within CSS files.

import zest from '@decodelabs/vite-plugin-zest'
import { defineConfig } from 'vite'

export default defineConfig({
  plugins: [
    zest({
      publicCacheBuster: true
    })
  ],
})

Licensing

Zest is licensed under the MIT License. See LICENSE for the full license text.