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

wve-cli

v0.1.2

Published

A CLI tool for quickly creating Vue.js projects with multiple templates

Readme

wve-CLI

一个用于快速创建 Vue.js 项目的 CLI 脚手架工具。

本项目展示了如何从零开始构建一个完整的 CLI 脚手架工具,文档中详细说明了每个依赖包的作用和实现原理,是学习脚手架开发的最佳实践。

🚀 特性

  • 📦 支持多种项目模板(Vue3+TypeScript、React+TypeScript)
  • 🎯 交互式命令行界面
  • ⚡ 快速项目创建
  • 🔧 自动依赖安装
  • 📝 详细的进度提示

📕 模板

📦 安装

# 全局安装
npm install -g wve-cli

# 或者使用 pnpm
pnpm add -g wve-cli

# 或者使用 yarn
yarn global add wve-cli

🛠️ 使用方法

创建新项目

# 交互式创建项目
wve create

# 直接指定项目名称
wve create my-project

更新

wve update

查看版本

wve -v
# 或
wve --version

📋 可用模板

| 模板名称 | 描述 | 技术栈 | | --------- | ---------------------- | ------------------------------- | | vue3-ts | Vue3 + TypeScript 模板 | Vue 3, TypeScript, Element Plus |

🏗️ 项目结构

wve-cli/
├── src/                       # 源代码目录
│   ├── command/               # 命令模块
│   │   ├── create.ts          # 创建项目命令
│   │   └── update.ts          # 更新命令
│   ├── utils/                 # 工具模块
│   │   ├── clone.ts           # Git克隆工具
│   │   └── log.ts             # 日志工具
│   └── index.ts               # 主入口文件
├── bin/                       # 可执行文件目录
│   └── index.js               # CLI入口文件
├── dist/                      # 构建输出目录
│   ├── index.js               # 打包后的主文件
│   └── fonts/                 # 字体文件目录
│       └── Standard.flf       # ASCII艺术字体文件
├── fonts/                     # 源字体文件目录
│   └── Standard.flf           # ASCII艺术字体文件
├── package.json               # 项目配置文件
├── rollup.config.js           # Rollup构建配置
├── tsconfig.json              # TypeScript配置
├── .gitignore                 # Git忽略文件
└── README.md                  # 项目说明文档

📚 依赖包说明

开发依赖 (devDependencies)

命令行交互相关

  • @inquirer/prompts: 提供交互式命令行界面,支持选择、输入等操作
  • commander: 命令行参数解析工具,用于创建 CLI 应用
  • chalk: 终端文字颜色和样式库,用于美化输出
  • figlet: ASCII 艺术字体库,用于生成大标题和装饰性文字
  • @types/figlet: figlet 的 TypeScript 类型定义
  • log-symbols: 终端符号库,提供成功、错误、警告等状态图标
  • ora: 终端加载动画库,提供优雅的加载提示效果

构建工具相关

  • rollup: 现代 JavaScript 模块打包器,用于构建库
  • @rollup/plugin-commonjs: Rollup 插件,将 CommonJS 模块转换为 ES6
  • @rollup/plugin-json: Rollup 插件,支持导入 JSON 文件
  • @rollup/plugin-node-resolve: Rollup 插件,解析 node_modules 中的模块
  • @rollup/plugin-terser: Rollup 插件,用于代码压缩和混淆
  • rollup-plugin-node-externals: Rollup 插件,自动外部化 node_modules 中的依赖
  • rollup-plugin-typescript2: Rollup 插件,支持 TypeScript 编译
  • rollup-plugin-copy: Rollup 插件,用于在构建过程中复制静态文件(如字体文件)

Git 操作相关

  • simple-git: 简化 Git 操作的 Node.js 库,用于克隆仓库

文件系统相关

  • fs-extra: 扩展的 fs 模块,提供更多文件操作方法
  • @types/fs-extra: fs-extra 的 TypeScript 类型定义

工具库相关

  • lodash: JavaScript 实用工具库,提供数组、对象、字符串等操作方法
  • @types/lodash: lodash 的 TypeScript 类型定义

进度显示相关

  • progress-estimator: 进度条显示库,提供友好的进度提示
  • ora: 终端加载动画库,提供优雅的加载提示效果

TypeScript 相关

  • @types/node: Node.js 的 TypeScript 类型定义

生产依赖 (dependencies)

  • tslib: TypeScript 运行时库,提供 TypeScript 编译后的辅助函数

🔧 开发

安装依赖

pnpm install

构建项目

pnpm build

本地测试

# 构建后测试
pnpm build
node dist/index.js create test-project

📝 脚本说明

  • build: 使用 Rollup 构建项目,生成可执行文件
  • test: 测试脚本(待实现)

🤝 贡献

欢迎提交 Issue 和 Pull Request!

📄 许可证

ISC License

🔗 相关链接