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

create-art-app-pino

v1.0.2

Published

CLI scaffold tool for creating Art Design Pro based projects

Readme

create-art-app-pino

基于 Art Design Pro 的 Vue 3 项目脚手架 CLI。

一条命令生成包含认证、路由、工程化选项、文档治理选项的完整前端项目,生成后独立演进,CLI 不再介入。

快速开始

# 推荐:交互式创建
pnpm create art-app-pino my-project

# 或使用 npx
npx create-art-app-pino my-project

# 全默认(跳过所有问答)
pnpm create art-app-pino my-project --default

CLI 参数

| 参数 | 说明 | 默认值 | | --- | --- | --- | | --default | 跳过所有交互,使用默认值 | — | | --auth art | Art 内置登录页 | art | | --auth zhs | 智慧树 CAS 统一认证 | — | | --package-manager npm | 使用 npm 作为包管理器 | pnpm | | --history | History 路由模式 | ✅ | | --hash | Hash 路由模式 | — | | --no-git | 不执行 git init | — | | --no-hooks | 不生成 Husky / lint-staged / commitlint | — | | --no-reference | 不克隆 .reference/art-design-pro | — | | --no-vscode | 不生成 .vscode/ 配置 | — | | --no-agents | 不生成 AGENTS.md | — | | --no-doc-governance | 不启用文档治理 | — |

示例

# 智慧树认证 + Hash 路由 + 不克隆 reference
pnpm create art-app-pino my-app --auth zhs --hash --no-reference

# npm + 关闭 Git 初始化与提交校验
pnpm create art-app-pino my-app --package-manager npm --no-git --no-hooks

# 最小化项目
pnpm create art-app-pino my-app --default --no-reference --no-vscode --no-hooks --no-doc-governance

生成项目的技术栈

  • 框架:Vue 3 + TypeScript + Vite
  • UI:Element Plus + Tailwind CSS v4
  • 状态管理:Pinia + pinia-plugin-persistedstate
  • 工程化(可选):ESLint + Husky + lint-staged + commitlint
  • 文档治理(可选):frontmatter 校验 + 命名规范 + 私人路径检测 + 死链检测

交互式选项

认证方式

| 选项 | 说明 | | --- | --- | | Art 内置登录 | 用户名/密码登录页 + 前端 token 管理 | | 智慧树 CAS | 企业 CAS 统一认证 + 开发态 env token 模式 |

功能模块

| 模块 | 包 | 默认 | | --- | --- | --- | | Markdown 渲染 | md-editor-v3 | ✅ | | SSE 流式请求 | @microsoft/fetch-event-source | ✅ | | ECharts 图表 | echarts + vue-echarts | ✅ | | 拖拽 | vue-draggable-plus | ✅ | | 日期工具 | dayjs | ✅ |

工程化配置

| 配置 | 说明 | 默认 | | --- | --- | --- | | .reference | 克隆 art-design-pro 作为参考代码 | ✅ | | .vscode | 统一编辑器配置 | ✅ | | AGENTS.md | AI 开发约束文件 | ✅ | | Git 初始化 | 执行 git init | ✅ | | 提交校验 | Husky + lint-staged + commitlint | ✅ | | 文档治理 | docs/ 骨架 + 4 道护栏 + PR 模板 | ✅ |

版本标记与升级迁移

版本标记

每个生成的项目在 package.json 中自动记录创建时使用的 CLI 版本:

{
  "create-art-app-pino": {
    "version": "1.0.0"
  }
}

迁移机制

生成后的项目与 CLI 解耦——CLI 只负责初始创建,不提供 upgrade 命令。当脚手架升级时,通过 MIGRATION.md 指导已有项目手动跟进。

对于 CLI 维护者

每次发版时在 MIGRATION.md 中新增版本段落,包含:

  1. 变更概述 — 本次改了什么
  2. 必须操作 — 已有项目必须执行的步骤
  3. 可选操作 — 按需执行的步骤

对于已有项目的开发者

  1. 查看项目 package.json 中的 create-art-app-pino.version
  2. 打开 CLI 仓库的 MIGRATION.md
  3. 找到从当前版本到最新版本之间的所有段落
  4. 按顺序执行迁移步骤

开发

pnpm install     # 安装依赖
pnpm dev         # 开发模式(watch)
pnpm build       # 构建

# 本地测试
mkdir -p _test-output && cd _test-output
node ../dist/index.cjs my-test --default --no-reference

发布

前置:npm registry 配置

国内开发者通常用 CNPM 镜像加速安装,但 登录和发布必须走官方 registry

# 查看当前 registry(如果是 npmmirror 则需要额外配置)
npm config get registry

方式 A:命令行指定(推荐,不改全局配置)

npm login --registry=https://registry.npmjs.org

方式 B:在 package.json 中锁定发布地址(一劳永逸)

项目已配置 publishConfigpnpm publish 会自动走官方 registry:

{
  "publishConfig": {
    "registry": "https://registry.npmjs.org"
  }
}

日常 pnpm install 仍走 CNPM 镜像,两不耽误。

首次发布

# 1. 登录 npm(首次需要,会打开浏览器验证)
npm login --registry=https://registry.npmjs.org

# 2. 确认登录成功
npm whoami --registry=https://registry.npmjs.org

日常发版

# 1. 更新版本号(自动同步到生成项目的版本标记)
npm version patch  # 或 minor / major

# 2. 更新 MIGRATION.md(如有变更需要已有项目跟进)

# 3. 发布到 npm(prepublishOnly 自动构建)
pnpm publish

# 4. 推送 tag
git push --follow-tags

发布后用户即可通过 pnpm create art-app-pino 使用最新版本。

项目结构

create-art-app-pino/
├── src/                         # CLI 源码
│   ├── index.ts                 # 入口
│   ├── prompts.ts               # 交互式问答 + 选项定义
│   ├── generator.ts             # 生成编排(模板叠加 + EJS)
│   ├── postActions.ts           # 后置操作(git init + .reference)
│   ├── featureDeps.ts           # 功能模块依赖声明
│   └── utils/
│       ├── renderTemplate.ts    # 模板渲染引擎
│       ├── deepMerge.ts         # package.json 深度合并
│       └── banner.ts            # CLI 横幅
├── template/                    # 模板层
│   ├── base/                    # 基础模板(所有项目共享)
│   ├── auth-art/                # Art 内置登录叠加层
│   ├── auth-zhihuishu/          # 智慧树 CAS 叠加层
│   ├── scaffold-doc-governance/ # 文档治理叠加层
│   ├── feature-markdown/        # Markdown 功能模板
│   ├── feature-sse/             # SSE 功能模板
│   └── feature-echarts/         # ECharts 功能模板
├── package.json
├── tsconfig.json
├── tsup.config.ts
├── MIGRATION.md                 # 版本迁移指南
└── README.md

License

MIT