snipe/web/node_modules/unplugin-utils
pyr0ball 7a704441a6 feat(snipe): Vue 3 frontend scaffold + Docker web service
- web/: Vue 3 + Vite + UnoCSS + Pinia, dark tactical theme (amber/#0d1117)
- AppNav, ListingCard, SearchView with filters/sort, composables
  (useSnipeMode, useKonamiCode, useMotion), Pinia search store
- Steal shimmer, auction countdown, Snipe Mode easter egg all native in Vue
- docker/web/: nginx + multi-stage Dockerfile (node build → nginx serve)
- compose.yml: api (8510) + web (8509) services
- Dockerfile CMD updated to uvicorn for upcoming FastAPI layer
- Clean build: 0 TS errors, 380 modules
2026-03-25 15:11:35 -07:00
..
LICENSE feat(snipe): Vue 3 frontend scaffold + Docker web service 2026-03-25 15:11:35 -07:00
package.json feat(snipe): Vue 3 frontend scaffold + Docker web service 2026-03-25 15:11:35 -07:00
README.md feat(snipe): Vue 3 frontend scaffold + Docker web service 2026-03-25 15:11:35 -07:00

unplugin-utils

npm version npm downloads Unit Test codecov

A set of utility functions commonly used by unplugins.

Thanks to @rollup/pluginutils. This projects is heavily copied from it.

Why Fork?

  • 🌍 Platform agnostic, supports running in the browser, Node.js...
  • ✂️ Subset, smaller bundle size.
  • 💯 Coverage: 100% test coverage.

Install

npm i unplugin-utils

Usage

createFilter

export default function myPlugin(options = {}) {
  const filter = createFilter(options.include, options.exclude)

  return {
    transform(code, id) {
      if (!filter(id)) return

      // proceed with the transformation...
    },
  }
}

normalizePath

import { normalizePath } from 'unplugin-utils'

normalizePath(String.raw`foo\bar`) // 'foo/bar'
normalizePath('foo/bar') // 'foo/bar'

Sponsors

License

MIT License © 2025-PRESENT Kevin Deng

MIT Copyright (c) 2019 RollupJS Plugin Contributors (https://github.com/rollup/plugins/graphs/contributors)