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

unplugin-caddy-localhost

v0.1.4

Published

Unplugin: 用 Caddy 把 dev 映射到 https://xxx.localhost

Readme

unplugin-caddy-localhost

NPM version

Unplugin 约定:用 Caddy 把 dev 映射到 https://xxx.localhosthost 可省略(默认从项目名推导;monorepo app 会自动带上 workspace root 名称),显式传入时须为 xxx.localhost 形式(如 frontend.localhost)。

前置条件

macOS 下三步(必做):

  1. 安装 Caddy:brew install caddy
  2. 启动 Caddy:caddy run(监听 443 需权限时可 sudo caddy runsudo setcap 'cap_net_bind_service=+ep' $(which caddy)
  3. 浏览器显示「安全」:执行一次 caddy trust

安装

pnpm add -D unplugin-caddy-localhost
npm i -D unplugin-caddy-localhost

使用(Vite)

// vite.config.ts
import caddyLocalhost from 'unplugin-caddy-localhost/vite';

export default defineConfig({
  plugins: [caddyLocalhost()],
});
  • host(可选):不传时自动读取项目 package.jsonname,推导为 <name>.localhost(例如 cheez-techcheez-tech.localhost);如果当前项目位于 monorepo workspace 中,会自动拼上 workspace root 的 name,例如 apps/web 的包名为 web、根包名为 vibe-plus 时,默认域名为 web.vibe-plus.localhost,避免多个仓库的 web.localhost 冲突。传入时须为 xxx.localhost
  • caddyAdmin(可选):Admin API 地址,默认 http://127.0.0.1:2019
  • autoStartCaddy(可选):API 不可达时是否自动执行 caddy run,默认 true。若 443 已被占用会提示可能已有 Caddy 在跑,请只保留一个实例。

Caddy 被关掉后插件会提示;用户再次 caddy run 后会自动重新注册,无需重启 Vite。

Nuxt

Nuxt 模块在 listen 时从开发服务器 listener 解析地址,再向 Caddy 注册反代,与 Vite 下基于 httpServer 的行为一致,读取 .dev 或锁文件。

开发

  • 监听构建:vp run dev
  • 测试:vp test
  • 构建:vp run build
  • Vite playground:vp run play:vite
  • Nuxt playground:vp run play:nuxt