Skip to content

zerolab-fe/awesome-nodejs

Repository files navigation

GitHub Actions Build Status

AI

  • brain.js - 基于模型训练的神经网络 JS 库,支持浏览器和 Node
  • tfjs - TensorFlow JS 版本

AST

  • gogocode - AST 处理工具(阿里妈妈)

Build tools

  • pkg - 将 Node.js 项目打包成可执行文件
  • gulp - 基于流(stream)的自动化构建工具
  • parcel - 开箱即用、零配置的打包器
  • rollup - Next-generation ES2015 module bundler
  • webpack - 静态模块打包工具
  • @vercel/ncc - 将 Node.js 项目编译为单个文件

Command-line apps

  • eslint-nibble - 一个能够快速预览 ESLint 错误并生成错误报告的 CLI 工具
  • release-it - 用于自动化版本控制和包发布的 Node CLI 工具
  • depcheck - 检查项目中未使用的依赖
  • npm-check-updates - 查找、更新 package.json 中的依赖包
  • npm-run-all - 可以并行运行多个 npm 脚本
  • auto-install - 在编码时自动安装依赖
  • wifi-password-cli - 获取当前 wifi 密码
  • fkill-cli - 杀死进程,交互式,跨平台
  • node-bcat - 将日志实时输出到浏览器
  • live-server - 具有 livereload 功能的开发 HTTP 服务器
  • http-server - 一个简单的零配置命令行 http 服务器
  • david - 检测 npm 依赖是否过时
  • is-online - 检查互联网连接是否建立
  • pageres - 捕获各种分辨率的网站屏幕截图
  • speed-test - 使用 speedtest.net 测试网速和ping
  • trash - 将文件移动到回收站,rm 的安全替代方法
  • gh-home - 打开给定或当前仓库的GitHub页面
  • npm-name - 检查软件包或组织名称在npm上是否可用
  • np - A better npm publish
  • gh - GitHub的官方命令行工具

Command-line utilities

  • nanocolors - 比 chalk 执行速度快 2 倍、node_modules 体积小 5 倍的命令行着色工具
  • import-local - 允许全局安装的 CLI工具 使用自身的本地安装版本
  • text-table - 将终端中的内容以无边框表格的形式输出(文本对齐)
  • table - 将数据格式化为表格
  • node-progress - 进度条
  • cli-highlight - 命令行终端语法高亮
  • boxen - Create boxes in the terminal
  • global-modules - 返回全局 node_modules 目录
  • preferred-pm - 返回项目的首选包管理器<pnpm|yarn|npm>
  • npm-check - 检查过时,不正确和未使用的依赖项。
  • validate-npm-package-name - 检查包名是否符合 npm 规范
  • fast-levenshtein - Levenshtein 算法,指两个字符串之间,由一个转换成另一个所需的最少编辑操作次数。
  • update-notifier - Update notifications for your CLI app
  • commander - 完整的 node.js 命令行解决方案
  • color - Javascript 颜色转换和操作库
  • update-check - 检查模块是否有更新
  • minimist - 标准命令行参数解析工具
  • figlet - 将普通终端文本转换为大字母,如 logo
  • clear - 清空终端屏幕
  • figures - 在 windows 或其他终端显示 Unicode 符号
  • ansi-escapes - 用于 ANSI 码转义
  • log-symbols - 为 log 添加彩色符号(info、success、warning、error)
  • conf - 轻松设置配置信息
  • listr - Terminal 任务列表
  • ink - 使用 React 写命令行应用
  • log-update - 在 Terminal 渲染进度条或动画
  • ora - Terminal spinner
  • yargs - 命令行参数解析工具
  • enquirer - 用于创建交互式 CLI 提示
  • chalk - 在 Terminal 设置字符串颜色

Compiler

  • esbuild - 一个非常快的 JavaScript 打包器和压缩器(Go)
  • swc - Super fast javascript / typescript compiler

CSS

  • tailwindcss - 一个用于快速 UI 开发的实用工具集 CSS 框架

Database

  • prisma - Next-generation Node.js and TypeScript ORM
  • mysql - MySQL client
  • mongoose - 全能的 MongoDB ORM 库
  • sequelize - 一款支持 mysql, sqlite3, pg, msssql 的多功能 ORM 库

Date

  • dateformat - 日期格式化
  • dayjs - 一个轻量的日期库,具有和 Moment.js 兼容的API
  • date-fns - 日期工具类库,提供了最全面、最简单和一致的工具集
  • Luxon - 一个用于在JS中处理日期和时间的库

Debug

  • ndb - 由 Chrome DevTools 支持的 Node.js 调试工具
  • spy-debugger - 页面远程调试 & 抓包工具
  • vconsole - 微信小程序推出的调试工具,直接内嵌在页面内,支持控制台、网络、系统信息
  • node-inspector - Node debugger 和 Devtools 结合的调试工具
  • debug - 最好用的 debug 日志辅助工具

Documentation

Electron

  • electron-store - 用来保存 Electron 应用程序或模块的简单持久性数据

Email

  • mjml - 一个标识语言,用来减少编写响应式邮件的复杂度
  • email-templates - 电子邮件模板
  • emailjs - 发送电子邮件(smtp 协议)
  • nodemailer - 快速轻松发送电子邮件

Filesystem

  • jsonfile - 轻松读取/写入JSON文件
  • tmp - 创建临时文件或目录
  • nsfw - 一个简单文件监听库
  • mkdirp - 递归创建目录
  • tempy - 获取随机的临时文件或目录路径
  • move-file - 移动文件
  • pkg-dir - 查找 npm 或 Node.js 包的根目录
  • istextorbinary - 检查文件是文本文件还是二进制文件
  • filenamify - 将字符串转换为有效的安全文件名
  • write-json-file - Stringify and write JSON to a file atomically
  • load-json-file - Read and parse a JSON file
  • proper-lockfile - 进程间或机器间文件锁🔐
  • find-up - 遍历父目录查找文件
  • chokidar - 监听文件变化
  • fs-extra - 基于 fs 的扩展
  • make-dir - 递归创建目录
  • rimraf - 递归删除文件
  • cpy - Copy files
  • fast-glob - 快速的 Node.js 匹配库
  • globby - 基于 fast-glob 并提供了扩展
  • del - 删除文件和目录,基于 rimrafglob
  • resolve-cwd - 从当前工作目录解析模块的路径
  • clipboardy - 访问系统剪切板(copy/paste)
  • micromatch - 高度优化的通配符和全局匹配库,minimatch 和 multimatch 的替代品

Git

  • simple-git - 一个轻量级的接口,用于在任何 node.js 应用程序中运行 git 命令。
  • nodegit - 是 libgit2 的 Node.js 绑定版本
  • @gitgraph/node - 在 Terminal 绘制 git 流程图(支持浏览器、React)

HTTP

  • http-server - 静态文件服务器命令行工具,无需配置,一条命令开启 http 服务
  • spdy - SPDY/HTTP2 服务器,兼容 Express
  • anyproxy - 可供插件配置的HTTP/HTTPS代理服务器
  • request-promise - request 模块的 promise 版本
  • request - 简单易用的 HTTP 请求库
  • serve - 为静态文件或单页面应用提供服务
  • node-fetch - window.fetch for Node.js
  • superagent - 轻量的 HTTP 请求库
  • http-proxy - 支持 websocket 的 HTTP 代理库
  • download - 下载并解压文件
  • axios - 基于 Promise 的 HTTP 客户端(也可在浏览器中使用)
  • gh-got - 基于 got 的 GitHub API 封装
  • got - 人性化且功能强大的 HTTP 请求库
  • urllib - 处理复杂场景下的 HTTP 请求

Image

  • probe-image-size - 无需完全下载即可获取图像格式和大小
  • jimp - 完全用 JavaScrip t编写图像处理库
  • lwip - 轻量级图像处理器
  • gm - GraphicsMagick and ImageMagick for node
  • image-type - 检测图像类型 Buffer/Uint8Array
  • qrcode - 二维码和条形码生成器
  • sharp - 高性能 node.js 图像处理库,使用 libvips 库来实现

Linter & Formatter

  • textlint - Text 和 Markdown 校验和格式化
  • prettier - ❤支持多种语言的代码格式化程序
  • eslint - 插件化并且可配置的 JavaScript 语法规则和代码风格的检查工具
  • standard - JavaScript 代码规范,自带 linter & 代码自动修正

Logger

  • consola - Console Logger for Node.js and Browser
  • signale - Console logger
  • bunyan - Node.js 日志库
  • log4js - 优质的 Node.js 日志库
  • pino - 轻量的 node.js 日志库
  • winston - 支持多传输、简单通用的日志库

Low/No/Pro Code

Markdown

Network

Node.js management

  • nodeenv - Node.js 隔离环境(沙盒)构建器
  • n - node 版本管理器
  • nvm - node 版本管理器

Other

  • webtorrent - 用于 Node.js 和浏览器的BT种子视频下载与播放工具

Process management

  • supervisor - 监听文件变化并自动重启
  • nodemon - 监视 node.js 应用程序中的任何更改并自动重启服务器
  • pm2 - 内置负载均衡的 node 进程管理器

Testing

  • faker.js - 浏览器和 Node.js 生成大量虚假数据
  • msw - 用于浏览器和 Node.js 的 REST/GraphQL API模拟库。
  • json-server - 指定 json 文件作为 api 的数据源,模拟服务端接口数据
  • chai - Chai 是一个针对 Node.js 和浏览器的行为驱动测试和测试驱动测试的诊断库,可与任何 JavaScript 测试框架集成。
  • puppeteer - Headless Chrome Node.js API
  • codecov - 一款测试覆盖率检测软件包
  • mockjs - 浏览器和 Node 均可用,支持自定义 schema 和随机数据
  • nock - Node.js Mock 库

TypeScript

  • ts-node - 提供了 TypeScript 的运行环境

Releases

No releases published