@fan-scripts/utils
v1.0.2
Published
@fan-scripts 工具库
Downloads
9
Readme
dev-script 📦 项目依赖库说明文档
本项目集成了多个功能强大且实用的 Node.js 库,用于 构建 CLI 工具、处理文件系统、进行网络请求、实现终端交互 等功能。以下是各依赖的详细功能说明。
📁 文件系统与路径
| 库名 | 说明 |
| -------------------- | --------------------------- |
| fs-extra | 增强版 fs,支持递归复制、删除、写入等高级功能。 |
| path (node:path) | Node.js 内置库,用于处理文件路径。 |
| recursive-readdir | 递归读取目录下的所有文件。 |
🎨 CLI 输出增强
| 库名 | 说明 |
| ----------------------------- | -------------------------------------------------- |
| picocolors | 极小体积的终端颜色输出库,支持彩色输出。 |
| gradient-string (gstring) | 用于在终端输出渐变文字。 |
| consola | 比 console 更强大的日志工具,支持 log/info/error/warn 等日志级别。 |
| tty-table (CliTable) | 用于在终端中美观地输出表格数据。 |
| ora | 用于在终端中展示加载动画(spinner)。 |
| cli-progress | 多功能的终端进度条组件。 |
🧠 CLI 用户交互
| 库名 | 说明 |
| ------------------------------ | ------------------------ |
| inquirer | 用于命令行交互式提问。 |
| prompts | 轻量级替代 inquirer 的提问库。 |
| inquirer-fuzzy-path | inquirer 的插件,支持模糊路径选择。 |
| inquirer-autocomplete-prompt | inquirer 的插件,支持自动补全提示。 |
📦 CLI 与包管理工具
| 库名 | 说明 |
| ----------------- | ------------------------------------- |
| commander | 构建命令行工具的标准库,支持命令、参数、选项等。 |
| update-notifier | 检测 npm 包是否有更新,并在 CLI 中提示用户。 |
| minimist | 命令行参数解析器。 |
| execa | 更现代化的子进程执行库,替代 child_process.spawn。 |
🌐 网络与请求
| 库名 | 说明 |
| -------- | ----------------------------- |
| undici | 现代、快速的 HTTP 请求库,Node.js 官方推荐。 |
| open | 打开浏览器、文件或其他应用,跨平台支持。 |
⚙️ 环境变量与配置
| 库名 | 说明 |
| --------------- | ---------------------------------- |
| dotenv | 加载 .env 文件中的环境变量到 process.env。 |
| dotenv-expand | 支持 .env 中的变量嵌套,例如 ${API_HOST}。 |
| cosmiconfig | 查找并加载配置文件(支持多种格式如 JSON、YAML)。 |
| Configstore | 用于持久化用户配置,存储在本地系统路径中。 |
🔍 工具函数
| 库名 | 说明 |
| ------------ | ------------------------------- |
| filesize | 将文件大小(字节)转换为可读格式(如 KB、MB)。 |
| file-type | 自动检测文件 MIME 类型和扩展名。 |
| mime | 根据扩展名或内容类型处理 MIME 类型映射。 |
| image-size | 获取图片的宽高信息。 |
| lodash-es | lodash 的 ES 模块版本,提供强大的数据处理函数。 |
| glob | 文件路径匹配工具,支持通配符匹配。 |
🧾 Git 相关
| 库名 | 说明 |
| --------------- | ------------------------ |
| git-repo-info | 获取当前项目 Git 仓库的提交信息、分支名等。 |
🧪 系统环境信息
| 库名 | 说明 |
| --------- | ----------------------------------- |
| envinfo | 获取操作系统、Node.js、依赖包等系统信息,常用于 bug 报告。 |
