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

@yingzhixiaoyi/vite-config

v0.1.0

Published

Shared Vue Vite build configuration

Readme

@yingzhixiaoyi/vite-config

Vue/Vite 项目的共享构建配置。

使用

import { createBaseConfig } from '@yingzhixiaoyi/vite-config'
export default createBaseConfig({ title: 'Wallet', proxy: { '/api': 'http://127.0.0.1:8080' } })

本包只在 Vite 配置阶段运行,以 ESM 配置源码和类型声明发布,不生成浏览器 IIFE。为兼容 Wujie 主子应用开发加载,开发服务器 CORS 默认开启;可显式设置 enableCors: false 关闭。业务项目可通过 customPlugins、proxy 和 noSplitChunks 扩展。

Vue 生态单例(link @yingzhixiaoyi/*)

本地 link: 接入 @yingzhixiaoyi/* 时,消费方与 justin-packages 工作区可能各自解析到一份 vue / pinia / vue-router / vue-i18n。生产 manualChunks 会把两份打进同名 chunk,injection Symbol 分裂,典型报错:

  • pinia:Cannot read properties of undefined (reading '_s')
  • vue-router:useRoute() 为空后再读 meta

createBaseConfig 已内建:

  1. resolve.alias + resolve.dedupe(从消费方 process.cwd() 解析)
  2. 插件 justin-vue-ecosystem-singleton(即使业务覆盖顶层 resolve,仍通过插件 config 钩子合并)

业务项目一般不必再为上述包手写 alias;只需保留自己的 @ 等别名,并合并基线 resolve:

const base = createBaseConfig({ title: 'Figgie' })
export default defineConfig({
  ...base,
  resolve: {
    ...base.resolve,
    alias: { ...base.resolve?.alias, '@': fileURLToPath(new URL('./src', import.meta.url)) },
  },
})

发布限制:依赖 Node/Vite 配置运行时,不能作为浏览器运行时代码加载;npm 发布验证只要求 ESM、类型声明和 Vite 配置构建通过。