内容
官方的
套餐
包管理器
资源
教程
发现
文章
时事通讯
视频
图书
博客
课程
备忘单
工具
社区
各种各样的
相关列表
官方的
网站
文档
存储库
套餐
疯狂科学
webtorrent - Node.js 和浏览器的流媒体 torrent 客户端。
peerflix——流媒体种子客户端。
ipfs - 分布式文件系统,旨在将所有计算设备与相同的文件系统连接起来。
stackgl - 基于 browserify 和 npm 构建的 WebGL 开放软件生态系统。
peerwiki ——BitTorrent 上的全部维基百科。
peercast-将 torrent 视频流式传输到 Chromecast。
BitcoinJS - 干净、可读、经过验证的比特币库。
Bitcore - 纯粹而强大的比特币库。
PDFKit -PDF 生成库.
turf - 模块化地理空间处理和分析引擎。
webcat - 使用 WebRTC 在网络上进行 p2p 管道,使用您的 GitHub 私钥/公钥进行身份验证。
NodeOS——第一个由 npm 提供支持的操作系统。
YodaOS ——AI操作系统。
Brain.js - 机器学习框架。
Pipcook - 用于创建机器学习管道的前端算法框架。
Cytoscape.js——图论(又名网络)建模和分析。
js-git ——Git 的 JavaScript 实现。
xlsx - 纯 JS Excel 电子表格阅读器和写入器。
isomorphic-git ——Git 的纯 JavaScript 实现。
命令行应用程序
np——更好
npm publish。npm-name - 检查包名称在 npm 上的可用性。
gh-home-打开当前目录中的 repo 的 GitHub 页面。
npm-home-打开包的 npm 页面。
垃圾-更安全的替代品
rm。速度测试- 测试您的互联网连接速度和 ping。
pageres-捕获网站截图。
cpy——复制文件。
vtop – 更出色的顶部,带有漂亮的图表。
清空垃圾桶-清空垃圾桶。
is-up - 检查网站是否正常运行或关闭。
is-online-检查互联网连接是否正常。
public-ip-获取您的公共 IP 地址。
clipboard-cli-在终端上复制并粘贴。
XO - 使用 JavaScript 幸福风格强制执行严格的代码风格。
ESLint——可插入的 JavaScript linting 实用程序。
David——告诉您软件包 npm 依赖项何时过期。
http-server - 简单、零配置的命令行 HTTP 服务器。
实时服务器- 具有实时重新加载功能的开发 HTTP 服务器。
bcat-将命令输出通过管道传输到 Web 浏览器。
normit - 在您的终端中使用语音合成的 Google 翻译。
fkill - 出色地终止进程。跨平台。
pjs - 可管道化的 JavaScript。从终端快速过滤、映射和缩减。
license-checker - 检查应用程序依赖项的许可证。
browser-run - 在浏览器环境中轻松运行代码。
tmpin - 为任何接受文件输入的 CLI 应用程序添加 stdin 支持.
壁纸——更改桌面壁纸。
pen-使用您最喜欢的编辑器在浏览器中进行实时 Markdown 预览。
dark-mode - 切换 macOS 暗模式。
Jsome - 使用可配置的颜色和缩进来漂亮地打印 JSON。
mobicon-移动应用程序图标生成器。
mobisplash-移动应用程序启动画面生成器。
diff2html-cli - 漂亮的 git diff 到 HTML 生成器。
trymodule——在终端中试用 npm 包。
jscpd——源代码的复制/粘贴检测器。
atmo-服务器端 API 模拟。
自动安装-在您编码时自动安装依赖项。
lessmd——终端中的 Markdown。
模块成本- 找出哪些依赖项正在减慢你的速度。
localtunnel-向世界公开您的本地主机。
svg-term-cli - 通过 SVG 共享终端会话。
gtop-终端的系统监控仪表板。
themer - 为您的编辑器、终端、壁纸、Slack 等生成主题。
carbon-now-cli - 您的代码的精美图像 - 就在您的终端内部。
cash-cli-在 170 种货币之间进行转换。
taskbook - 命令行环境的任务、板和注释。
discharge - 轻松将静态网站部署到 Amazon S3。
npkill - 轻松查找并删除旧的和繁重的 node_modules 文件夹。
函数式编程
lodash - 提供一致性、定制化、性能和附加功能的实用程序库。更好更快的 Underscore.js。
immutable - 不可变的数据集合。
Ramda - 实用程序库,专注于通过自动柯里化和反转参数顺序实现灵活的功能组合。避免数据变异。
Mout - 实用程序库与其他现有解决方案之间最大的区别在于您可以选择仅加载您需要的模块/功能,无需额外的开销。
RxJS - 用于转换、组合和查询各种数据的功能反应库。
Kefir.js - 专注于高性能和低内存使用率的反应式库。
HTTP
得到- 更好的内置
http模块接口。undici - 从头编写的高性能 HTTP 客户端,无任何依赖关系。
ky-universal - 基于 Fetch 的通用 HTTP 客户端。
node-fetch——用于
window.fetchNode.js。axios-基于 Promise 的 HTTP 客户端(也可在浏览器中使用)。
superagent -HTTP 请求库。
http-fake-backend - 通过可配置的路由提供 JSON 文件或 JavaScript 对象的内容来构建虚假后端。
cacheable-request - 使用符合 RFC 的缓存支持包装本机 HTTP 请求。
gotql - 基于got构建的 GraphQL 请求库。
global-agent - 可使用环境变量配置的全局 HTTP/HTTPS 代理。
smoke - 具有记录功能的基于文件的 HTTP 模拟服务器。
purest - REST 客户端。
调试/分析
debug——微型调试实用程序。
why-is-node-running - Node.js 正在运行,但您不知道为什么?
njsTrace - 检测和跟踪您的代码,查看所有函数调用、参数、返回值以及每个函数所花费的时间。
vstream - 可检测的流混合器用于检查流管道。
stackman - 使用代码摘录和其他有用内容增强错误堆栈跟踪。
locus - 在运行时启动一个可以访问所有变量的 REPL。
0x——火焰图分析。
ctrace - 格式良好且改进的跟踪系统调用和信号。
泄漏- 编写内存泄漏测试。
llnode - 事后分析工具,可让您检查对象并从崩溃的 Node.js 进程中获取见解。
thetool - 以 Chrome DevTools 友好格式捕获应用的不同 CPU、内存和其他配置文件。
swagger-stats - 跟踪 API 调用并监控 API 性能、健康和使用情况指标。
NiM - 管理 DevTools 调试工作流程。
dats - 简约且零依赖的StatsD客户端。
日志记录
pino-受 Bunyan 启发的超快记录器。
winston - 多传输异步日志库。
console-log-level - 最简单的记录器,支持日志级别和自定义前缀。
故事板- 端到端、分层、实时、丰富多彩的日志和故事。
consolesola-控制台记录器。
命令行实用程序
noodles – 终端字符串样式正确完成。
meow -CLI 应用程序助手。
yargs-自动生成优雅用户界面的命令行解析器。
ora-优雅的终端旋转器。
get-stdin——更简单的 stdin。
log-update - 通过覆盖终端中的先前输出来记录。适用于渲染进度条、动画等。
Ink - 用于交互式命令行应用程序的 React。
listr2——终端任务列表。
conf-为您的应用或模块提供简单的配置处理。
ansi-escapes——用于操作终端的 ANSI 转义代码。
日志符号- 各种日志级别的彩色符号。
图形- 带有 Windows CMD 后备的 Unicode 符号。
boxen—在终端中创建框。
terminal-link-在终端中创建可点击的链接。
终端图像-在终端中显示图像。
string-width - 获取字符串的可视宽度 - 显示该字符串所需的列数。
cli-truncate - 在终端中将字符串截断为特定宽度。
blessed - 类似 Curses 的库。
Inquirer.js - 交互式命令行提示符。
yn - 解析是/否类似的值。
cli-table3-漂亮的Unicode表。
drawille-用unicode盲文字符在终端上绘制。
ascii-charts-终端中的 ASCII 条形图。
progress - 灵活的 ascii 进度条。
洞察- 通过向 Google Analytics 匿名报告使用情况指标,帮助您了解您的工具的使用情况。
cli-cursor-切换 CLI 光标。
cli-columns - 列式 unicode 和 ansi-safe 文本列表。
cfonts——适用于控制台的性感 ASCII 字体。
multispinner - 多个、同时、单独可控制的 CLI 旋转器。
omelette - Shell 自动完成助手。
cross-env-跨平台设置环境变量。
shelljs - 可移植的 Unix shell 命令。
sudo-block - 阻止用户以 root 权限运行您的应用程序。
sparkly-生成迷你图
▁▂▃▅▂▇。Bit - 跨存储库创建、维护、查找和使用小模块和组件。
gradient-string - 终端输出中漂亮的颜色渐变。
oclif-带有解析器、自动文档、测试和插件的 CLI 框架。
终端大小- 可靠地获取终端窗口大小。
Cliffy - 交互式 CLI 框架。
zx-编写 shell 脚本 JavaScript。
构建工具
parcel - 速度极快,零配置的 Web 应用程序捆绑器。
webpack——为浏览器打包模块和资产。
rollup - 下一代 ES2015 模块捆绑器。
gulp - 流式和快速构建系统,更倾向于代码而不是配置。
Broccoli - 快速、可靠的资产管道,支持恒定时间重建和紧凑的构建定义。
Brunch - 具有简单的声明性配置、快速增量编译和自定工作流程的前端 Web 应用程序构建工具。
FuseBox - 结合了 webpack、JSPM 和 SystemJS 的强大功能以及一流的 TypeScript 支持的快速构建系统。
pkg-将您的 Node.js 项目打包成可执行文件。
Vite - 具有热模块替换和静态资产捆绑功能的前端构建工具。
硬件
johnny-five——基于 Firmata 的 Arduino 框架。
serialport-访问串行端口以进行读写。
usb -USB 库。
i2c-bus ——I2C 串行总线访问。
onoff -GPIO 访问和中断检测。
spi-device ——SPI 串行总线访问。
pigpio - Raspberry Pi 上的快速 GPIO、PWM、伺服控制、状态改变通知和中断处理。
gps-用于处理 GPS 接收器的 NMEA 解析器。
modbus-serial ——MODBUS-RTU(串行和 TCP)的纯 JavaScript 实现。
模板
marko - 基于 HTML 的模板引擎,将模板编译为 CommonJS 模块并支持流式传输、异步渲染和自定义标签。
nunjucks - 具有继承,异步控制等功能的模板引擎(受 jinja2 启发)。
handlebars.js - Mustache 模板的超集,增加了诸如助手和更高级的块之类的强大功能。
EJS - 简单、不受束缚的模板语言。
Pug - 深受 Haml 影响的高性能模板引擎。
Web 框架
Fastify - 快速且低开销的 Web 框架。
Next.js——用于服务器呈现的通用 JavaScript Web 应用程序的简约框架。
Nuxt.js - 用于服务器呈现的 Vue.js 应用程序的简约框架。
Hapi - 构建应用程序和服务的框架。
Micro - 采用异步方法的简约微服务框架。
Koa - Express 团队设计的框架,旨在成为 Web 应用程序和 API 的更小、更具表现力、更强大的基础。
Express - Web 应用程序框架,提供了一组强大的功能,用于构建单页、多页和混合 Web 应用程序。
Feathers - 以 Express 精神构建的微服务框架。
LoopBack - 用于创建 REST API 并轻松连接到后端数据源的强大框架。
Meteor - 一个超级简单、无处不在的数据库、线上数据传输、纯 Javascript 网络框架。(您可能喜欢awesome-meteor)
Restify——使您能够构建正确的 REST Web 服务。
ThinkJS - 支持 ES2015+、WebSockets、REST API 的框架。
ActionHero - 为 TCP 套接字、WebSocket 和 HTTP 客户端制作可重用且可扩展的 API 的框架。
seneca - 编写微服务的工具包。
AdonisJs - 一个真正的 Node.js MVC 框架,建立在依赖注入和 IoC 容器的坚实基础之上。
Moleculer - 快速而强大的微服务框架。
Nest - 受 Angular 启发的框架,用于构建高效且可扩展的服务器端应用程序。
TypeGraphQL - 使用类和装饰器通过 TypeScript 创建 GraphQL API 的现代框架。
Tinyhttp - 现代且快速的类似 Express 的 Web 框架。
Marble.js - 基于 TypeScript 和 RxJS 构建服务器端应用程序的功能反应框架。
Lad - 由前 Express TC 和 Koa 成员制作的框架,捆绑了 Web、API、作业和代理服务器。
Ts.ED - 直观的 TypeScript 框架,用于在 Express.js 或 Koa.js 上构建服务器端应用程序。
Hono - 小巧而快速的 Web 框架。
文档
document.js - 支持 ES2015+ 和流程注释的 API 文档生成器。
Docco - 文档生成器,生成一个 HTML 文档,显示与代码混合在一起的注释。
JSDoc - 类似于 JavaDoc 或 PHPDoc 的 API 文档生成器。
Docusaurus - 利用 React 和 Markdown 的文档网站生成器,并带有翻译和版本控制功能。
文件系统
del-使用 globs 删除文件/文件夹。
globby - 支持多种模式的 Glob 文件。
chokidar - 文件系统观察器,可稳定来自 macOS 的事件
fs.watch并在 macOS 上fs.watchFile使用本机fsevents。find-up-通过遍历父目录来查找文件。
prop-lockfile - 进程间和机器间锁文件实用程序。
load-json-file - 读取并解析 JSON 文件。
write-json-file - 以原子方式将 JSON 字符串化并写入文件。
fs-write-stream-atomic - 类似
fs.createWriteStream(),但是是原子的。filenamify — 将字符串转换为有效的文件名。
istextorbinary-检查文件是文本还是二进制。
fs-jetpack - 完全重新设计的文件系统 API,方便日常使用。
fs-extra——模块的额外方法
fs。pkg-dir——查找 npm 包的根目录。
filehound-用于搜索文件系统的灵活流畅的界面。
move-file——移动文件,甚至跨设备工作。
tempy - 获取随机临时文件或目录路径。
控制流
承诺
pify - Promisify 回调样式函数。
延迟——将承诺延迟指定的时间。
promise-memoize - 记忆承诺返回函数,具有到期和预取功能。
valvelet - 限制承诺返回函数的执行率。
p-map - 同时映射承诺。
更多的…
可观察对象
RxJS——反应式编程。
observable-to-promise - 将 Observable 转换为 Promise。
更多的…
流
Highland.js - 轻松管理同步和异步代码,仅使用标准 JavaScript 和类似 Node 的流。
流
get-stream-将流作为字符串或缓冲区获取。
from2 - 受启发的 ReadableStream 的便捷包装器
through2。into-stream - 将缓冲区/字符串/数组/对象转换为流。
duplexify - 将可写和可读流转换为单个 streams2 双工流。
pumpify - 将多个流组合成一个双工流。
peek-stream - 转换流,让您在决定如何解析之前先查看第一行。
二进制拆分-换行符(或任何分隔符)拆分器流。
byline - 超级简单的逐行流阅读器。
first-chunk-stream - 转换流中的第一个块。
pad-stream - 填充流中的每一行。
多流- 将多个流合并为一个流。
readable-stream - 核心中 Streams2 和 Streams3 实现的镜像。
through2-concurrent - 同时转换对象流。
即时的
µWebSockets - 高度可扩展的 WebSocket 服务器和客户端库。
Socket.io——实现基于事件的实时双向通信。
Faye - 基于 Bayeux 协议的实时客户端 - 服务器消息总线。
SocketCluster - 可扩展的 HTTP + WebSocket 引擎,可以在多个 CPU 核心上运行。
Primus - 实时框架的抽象层,用于防止模块锁定。
deepstream.io - 可扩展的实时微服务框架。
Kalm - 低级套接字路由器和中间件框架。
MQTT.js - MQTT 客户端 - 基于发布-订阅的消息传递协议,可在 TCP/IP 上使用。
rpc-websockets - 通过 WebSockets 实现 JSON-RPC 2.0。
Aedes - 可在任何流服务器上运行的准 MQTT 服务器。
图像
sharp - 用于调整 JPEG、PNG、WebP 和 TIFF 图像大小的最快模块。
图像类型- 检测图像的类型。
图像尺寸- 获取图像的尺寸。
gm -GraphicsMagick 和 ImageMagick 包装器。
lwip--轻量级图像处理器,不需要ImageMagick。
pica - 纯 JS 实现的高质量、快速调整大小 (lanczos3)。当不允许像素化时,可替代画布 drawImage()。
jimp——纯 JavaScript 进行图像处理。
qrcode -QR 码和条形码生成器。
ImageScript - 使用 JavaScript 进行图像处理,利用 WebAssembly 提高性能。
文本
iconv-lite——转换字符编码。
string-length - 通过正确计算星标符号并忽略 ANSI 转义码来获取字符串的实际长度。
camelcase - 将破折号/点/下划线/空格分隔的字符串转换为 camelCase:foo-bar → fooBar。
escape-string-regexp - 转义 RegExp 特殊字符。
splice-string——删除或替换字符串的一部分,如
Array#splice。indent-string-缩进字符串中的每一行。
strip-indent - 删除字符串中每行的前导空格。
检测缩进- 检测代码的缩进。
he ——HTML 实体编码器/解码器。
i18n-node - 具有动态 JSON 存储的简单翻译模块。
babelfish - i18n 具有非常简单的复数语法。
matcher-简单的通配符匹配。
unhomoglyph-规范化视觉上相似的 Unicode 字符。
i18next——国际化框架。
nanoid - 小巧、安全、URL 友好、唯一的字符串 ID 生成器。
StegCloak-将秘密隐藏在字符串中,一目了然。
数字
random-int-生成一个随机整数。
random-float-生成一个随机浮点数。
unique-random-生成连续唯一的随机数。
四舍五入- 将数字四舍五入到特定的小数位数:
1.234→1.2。
数学
ndarray - 多维数组。
mathjs——一个广泛的数学库。
math-clamp-限制一个数字。
代数- 代数结构。
multimath - 在 WebAssembly 和 JS 中创建快速图像数学的核心。
日期
Luxon - 用于处理日期和时间的库。
date-fns - 现代日期实用程序。
Day.js - Moment.js 的不可变日期库替代品。
dateformat-日期格式。
tz-format - 使用时区格式化日期:
2015-11-30T10:40:35+01:00。cctz - 快速解析、格式化和日期时区转换。
网址
normalize-url-规范化 URL。
humanize-url - 人性化 URL:https://sindresorhus.com → http://sindresorhus.com。
url-unshort-扩展缩短的 URL。
Speakingurl - 通过音译的字符串生成 slug。
linkify-it - 具有完整 Unicode 支持的链接模式检测器。
url-pattern - 比正则表达式字符串匹配模式更适用于 URL 和其他字符串。
embedza - 使用来自 oEmbed、Open Graph、元标记的信息从 URL 创建 HTML 片段/嵌入。
数据验证
joi - JavaScript 对象的对象模式描述语言和验证器。
is-my-json-valid - 使用代码生成的 JSON 模式验证器,速度极快。
property-validator - 轻松进行 Express 的属性验证。
schema-inspector - JSON API 清理和验证。
ajv - 最快的 JSON Schema 验证器。支持 v5、v6 和 v7 提案。
Superstruct - 在 JavaScript(和 TypeScript)中验证数据的简单且可组合的方法。
yup-对象模式验证。
zod - 具有静态类型推断的 TypeScript-first 模式验证。
解析
remark - 由插件提供支持的 Markdown 处理器。
markdown-it - Markdown 解析器,100% 支持 CommonMark、扩展和语法插件。
parse5 - 快速、功能齐全、符合规范的 HTML 解析器。
@parcel/css——用 Rust 编写的 CSS 解析器、转换器和压缩器。
strip-json-comments - 从 JSON 中删除注释。
strip-css-comments - 从 CSS 中删除注释。
parse-json - 解析 JSON 并显示更多有用的错误。
URI.js ——URL 变异。
JSONStream - 流式 JSON.parse 和 stringify。
neat-csv - 快速 CSV 解析器。上述回调接口。
csv-parser - 流式 CSV 解析器,旨在比其他任何人都更快。
PEG.js - 简单的解析器生成器,可生成具有出色错误报告功能的快速解析器。
x-ray -Web 抓取实用程序。
nearley - 简单、快速、强大的 JavaScript 解析。
binary-extract - 从 JSON 缓冲区中提取一个值,而无需解析整个内容。
Stylecow - 解析、操作和转换现代 CSS,使其与所有浏览器兼容。可通过插件进行扩展。
js-yaml - 非常快的 YAML 解析器。
xml2js ——XML 到 JavaScript 对象转换器。
Jison - 友好的 JavaScript 解析器生成器。它与 Bison、Yacc 和家族共享基因。
google-libphonenumber - 解析、格式化、存储和验证电话号码。
ref-在缓冲区中读取/写入结构化二进制数据。
xlsx-populate - 读取/写入 Excel XLSX。
Chevrotain - 非常快且功能丰富的 JavaScript 解析器构建工具包。
fast-xml-parser - 验证并解析 XML。
人性化
pretty-bytes - 将字节转换为人类可读的字符串:
1337→1.34 kB。pretty-ms - 将毫秒转换为人类可读的字符串:
1337000000→15d 11h 23m 20s。ms——微小的毫秒转换实用程序。
pretty-error-错误较少,混乱较少。
read-art - 从任何页面提取可读内容。
压缩
yazl-邮政编码。
yauzl——解压缩。
Archiver - 用于档案生成的流式接口,支持 ZIP 和 TAR。
pako-高速 zlib 端口到纯 js(deflate、inflate、gzip)。
tar-stream - 流式 tar 解析器和生成器。另请参阅tar-fs。
网络
get-port—获取可用端口。
ipify——获取您的公共 IP 地址。
getmac—获取计算机的MAC地址。
DHCP ——DHCP 客户端和服务器。
netcat - 纯 JS 中的 Netcat 端口.
数据库
驱动程序
PostgreSQL - PostgreSQL 客户端。纯 JavaScript 和原生 libpq 绑定。
Redis -Redis 客户端。
LevelUP ——LevelDB。
MySQL ——MySQL 客户端。
couchdb-nano -CouchDB 客户端。
Aerospike - Aerospike 客户端。
Couchbase ——Couchbase 客户端。
MongoDB -MongoDB 驱动程序。
原始设计制造商/原始设计商
Sequelize - 多方言 ORM。支持 PostgreSQL、SQLite、MySQL 等。
Bookshelf - 采用 Backbone.js 风格的 PostgreSQL、MySQL 和 SQLite3 的 ORM。
Mongoose - 优雅的 MongoDB 对象建模。
Waterline - 与数据存储无关的工具,可大大简化与一个或多个数据库的交互。
OpenRecord - PostgreSQL、MySQL、SQLite3 和 RESTful 数据存储的 ORM。类似于 ActiveRecord。
pg-promise - 使用承诺的本机 SQL 的 PostgreSQL 框架。
slonik - 具有严格类型、详细日志记录和断言的 PostgreSQL 客户端。
Objection.js - 基于 SQL 查询构建器 Knex 构建的轻量级 ORM。
TypeORM - 适用于 PostgreSQL、MariaDB、MySQL、SQLite 等的 ORM。
MikroORM - 基于数据映射器、工作单元和身份映射模式的 TypeScript ORM。支持 MongoDB、PostgreSQL、MySQL 和 SQLite。
Prisma - 现代数据库访问(ORM 替代品)。TypeScript 中自动生成且类型安全的查询生成器。支持 PostgreSQL、MySQL 和 SQLite。
Drizzle ORM - 支持各种数据库(例如 PostgreSQL)的 TypeScript ORM。
查询生成器
Knex - PostgreSQL、MySQL 和 SQLite3 的查询生成器,设计灵活、可移植且使用有趣。
其他
NeDB - 用 JavaScript 编写的嵌入式持久数据库。
Lowdb - 由 Lodash 提供支持的小型 JavaScript 数据库。
Keyv - 简单的键值存储,支持多个后端。
Finale - 适用于您的 Sequelize 模型的 RESTful 端点生成器.
database-js-具有类似 JDBC 连接的多个数据库的包装器。
Mongo Seeding - 使用 JavaScript 和 JSON 文件填充 MongoDB 数据库。
@databases - 使用纯 SQL 查询 PostgreSQL、MySQL 和 SQLite3,而不存在 SQL 注入的风险。
pg-mem-用于测试的内存 PostgreSQL 实例。
测试
AVA——未来派测试运行器。
Mocha - 功能丰富的测试框架使异步测试变得简单而有趣。
nyc-基于伊斯坦布尔构建的代码覆盖工具,可与子流程配合使用。
tap -TAP 测试框架。
磁带——TAP 生产测试线束。
power-assert-通过标准断言接口提供描述性断言消息。
Mochify - 使用 Browserify、Mocha、PhantomJS 和 WebDriver 进行 TDD。
trevor - 针对 Node.js 的多个版本运行测试,无需手动切换版本或推送到 Travis CI。
loadtest - 使用自动化 API 为您的 Web 应用程序运行负载测试。
Sinon.JS - 测试间谍、存根和模拟。
navit -PhantomJS / SlimerJS 包装器,用于简化浏览器测试脚本。
Nock -HTTP 模拟和期望。
实习生——代码测试堆栈。
toxy-可破解的 HTTP 代理,用于模拟故障场景和网络状况。
hook-std - 挂钩并修改 stdout/stderr。
testen - 使用 NVM 在本地运行 Node.js 多个版本的测试。
Nightwatch - 基于 Selenium WebDriver 的自动化 UI 测试框架。
WebdriverIO - 基于 WebDriver 协议的自动化测试。
Jest - 轻松的 JavaScript 测试。
TestCafe - 自动化浏览器测试。
abstruse - 持续集成服务器。
CodeceptJS——端到端测试。
木偶师——无头铬。
Playwright - 具有单一 API 的 Headless Chromium、WebKit 和 Firefox。
nve-在本地对 Node.js 的多个版本运行任何命令。
axe-core - 用于自动化 Web UI 测试的可访问性引擎。
testcontainers-node - 提供常见数据库、Selenium 网络浏览器或任何其他可以在 Docker 容器中运行的轻量级、一次性实例。
安全
upash-所有密码哈希算法的统一 API。
themis - 多语言框架,使典型的加密方案易于使用:静态数据、经过身份验证的数据交换、传输保护、身份验证等。
GuardRails - 在拉取请求中提供安全反馈的 GitHub 应用程序。
rate-limiter-flexible - 暴力破解和 DDoS 攻击保护。
crypto-hash - 异步非阻塞散列。
jose-simple - 使用 JOSE(JSON 对象签名和加密)标准对数据进行加密和解密。
基准测试
Benchmark.js - 支持高分辨率计时器并返回具有统计意义的结果的基准测试库。
压缩器
babel-minify - 基于 Babel 工具链的 ES2015 + 感知压缩器。
UglifyJS2 ——JavaScript 压缩器。
clean-css ——CSS 压缩器。
最小化——HTML 压缩器。
imagemin-图像缩小器。
验证
Passport - 简单、不引人注目的身份验证。
Grant - Express、Koa、Hapi、Fastify、AWS Lambda、Azure、Google Cloud、Vercel 等的 OAuth 提供商。
授权
CASL -UI 和 API 的同构授权。
node-casbin - 支持 ACL,RBAC 和 ABAC 等访问控制模型的授权库。
电子邮件
Nodemailer——处理电子邮件的最快方式。
emailjs-将带有附件的文本/HTML 电子邮件发送到任何 SMTP 服务器。
电子邮件模板- 创建、预览和发送自定义电子邮件模板。
MJML - 标记语言,旨在减少创建响应式电子邮件的痛苦。
作业队列
bull-持久作业和消息队列。
agenda - MongoDB 支持的作业调度。
idoit-具有高级作业控制的 Redis 支持的作业队列引擎。
node-resque - Redis 支持的作业队列。
rsmq -Redis 支持的消息队列。
bee-queue - 高性能 Redis 支持的作业队列。
RedisSMQ - 具有实时监控功能的简单高性能 Redis 消息队列。
sqs-consumer - 无需样板即可构建基于 Amazon Simple Queue Service (SQS) 的应用程序。
better-queue - 当您无法使用 Redis 时,简单高效的作业队列。
bullmq-持久作业和消息队列。
bree-具有工作线程,cron,日期和人类语法支持的作业任务调度程序。
Node.js 管理
n ——Node.js 版本管理。
nave - Node.js 的虚拟环境。
nodeenv - 与 Python 的 virtualenv 兼容的 Node.js 虚拟环境。
Windows 版 nvm -Windows 版本管理。
nodenv - 类似于 Ruby 的 rbenv 的版本管理器。它支持自动版本切换。
fnm - 使用 Rust 构建的跨平台 Node.js 版本管理器。
跨平台集成
napi-rs - 通过 Node-API 在 Rust 中构建已编译的 Node.js 插件的框架。
Neon - 用于编写安全、快速的本机 Node.js 模块的 Rust 绑定。
Edge.js - 在 Windows、macOS 和 Linux 上的同一进程中运行 .NET 和 Node.js 代码。
DotNetJS - 使用此 .NET 互操作层在 Node.js 中使用 .NET 库。
自然语言处理
retext——一种可扩展的自然语言系统。
franc-检测文本的语言。
leven-使用Levenshtein距离算法测量两个字符串之间的差异。
自然- 自然语言能力。
nlp.js——构建机器人,具有实体提取、情感分析、自动语言识别等功能。
流程管理
PM2——高级流程管理器。
nodemon - 监视应用程序中的变化并自动重启服务器。
node-mac - 作为本机 Mac 守护程序运行脚本并记录到控制台应用程序。
node-linux-将脚本作为本机系统服务运行并记录到系统日志。
node-windows - 将脚本作为本机 Windows 服务运行并记录到事件查看器。
Supervisor-当脚本崩溃时重新启动脚本,或者当
*.js文件更改时重新启动脚本。Phusion Passenger - 友好的进程管理器,可直接集成到 Nginx。
自动化
robotjs - 桌面自动化:控制鼠标、键盘并读取屏幕。
nut.js - 具有图像匹配功能的跨平台原生 GUI 自动化/测试框架,可与 Jest 集成。
AST
Acorn - 小巧、快速的 JavaScript 解析器。
babel-parser - Babel 中使用的 JavaScript 解析器。
静态站点生成器
DocPad - 具有动态能力和庞大插件生态系统的静态站点生成器。
docsify - 没有静态构建的 HTML 文件的 Markdown 文档站点生成器。
Charge - 使用 JSX 和 MDX 的自发、零配置静态站点生成器。
内容管理系统
KeystoneJS - 基于 Express 和 MongoDB 构建的 CMS 和 Web 应用程序平台。
ApostropheCMS - 内容管理系统,强调基于 Express 和 MongoDB 构建的直观前端内容编辑和管理。
Strapi - 内容管理框架(headless-CMS)用于构建强大的 API。
Factor -Vue.js 仪表板框架和无头 CMS。
AdminBro - 自动生成带有 CRUD 功能的管理面板,用于管理您的所有资源。
Graphweaver -CMS 和无头 GraphQL API。
论坛
nodeBB——现代网络的论坛平台。
博客
Ghost - 简单、强大的发布平台。
Hexo - 快速、简单且功能强大的博客框架。
诡异的
奶牛-ASCII 奶牛。
superb - 获得像 superb 一样的词语。
cat-names - 获取流行的猫名。
狗名- 获取流行的狗名。
超级英雄- 获取超级英雄的名字。
supervillains-获取超级恶棍的名字。
cool-ascii-faces - 获得一些很酷的 ascii 面孔。
猫-ascii-脸-
₍˄·͈༝·͈˄₎◞ ̑̑ෆ⃛ (=ↀωↀ=)✧ (^・o・^)ノ”。nerds - 获取有关“哈利波特”、“星球大战”和“神奇宝贝”等书呆子话题的数据。
序列化
snappy - Google Snappy 压缩库的本机绑定。
protobuf-协议缓冲区的实现。
compactr - Compactr 协议的实现。
各种各样的
execa——更好
child_process。cheerio - 专为服务器设计的快速、灵活、精益的核心 jQuery 实现。
打开——打开网站、文件、可执行文件等内容。
hasha - 哈希变得简单。获取缓冲区/字符串/流/文件的哈希值。
dot-prop - 使用点路径从嵌套对象获取属性。
onetime-仅运行一次功能。
mem - 记忆函数 - 一种优化技术,通过缓存具有相同输入的调用结果来加速连续函数调用。
strip-bom - 从字符串 / 缓冲区 / 流中去除 UTF-8 字节顺序标记 (BOM)。
os-locale——获取系统区域设置。
ssh2 ——SSH2 客户端和服务器模块。
adit - SSH 隧道变得简单。
file-type——检测缓冲区的文件类型。
瓶颈- 使节流变得容易的速率限制器。
webworker-threads - 具有本机线程的轻量级 Web Worker API 实现。
clipboardy——访问系统剪贴板(复制/粘贴)。
node-pre-gyp - 可以轻松地从二进制文件发布和安装 Node.js C++ 插件。
opencv - OpenCV 的绑定。事实上的计算机视觉库。
dotenv-从.env 文件加载环境变量。
semver-语义版本解析器。
nodegit - Git 的本机绑定。
json-strictify - 安全地将值序列化为 JSON,不会丢失数据或陷入无限循环。
jsdom ——HTML 和 DOM 的 JavaScript 实现。
@sindresorhus/is——类型检查值。
env-dot-prop - 使用点路径获取、设置或删除 process.env 的嵌套属性。
node-video-lib - 纯 JavaScript 库,用于处理 MP4 和 FLV 视频文件并为 HLS 流创建 MPEG-TS 块。
basic-ftp ——FTP/FTPS 客户端。
cashify——货币兑换。
genepi - 从 C++ 代码自动生成原生 Node.js 插件。
husky - 创建 Git 钩子脚本。
patch-package - 制作并保存对 npm 依赖项的修复。
editly - 声明式视频编辑 API。
wild-wild-path - 带有通配符和正则表达式的对象属性路径。
uint8array-extras-用于与 Uint8Array 和 Buffer 一起使用的有用实用程序。
包管理器
npm——默认包管理器。
pnpm - 节省磁盘空间的包管理器。
yarn——替代的包管理器。
bun - JavaScript 和 TypeScript 应用程序的一体化工具包。
资源
教程
Node.js 最佳实践- 对 Node.js 最佳实践的顶级内容进行总结和整理,提供多种语言版本。
Nodeschool-通过互动课程学习 Node.js。
Node 的艺术- Node.js 简介。
module-best-practices - 编写新的 npm 模块时的一些良好实践。
Node 方式- Node.js 的最佳实践和指导原则的完整哲学用于编写可维护的模块、可扩展的应用程序以及易于阅读的代码。
您不知道 Node.js -Node.js 核心功能和异步 JavaScript 简介。
可移植 Node.js 指南- 有关如何编写可移植/跨平台 Node.js 代码的实用指南。
构建无需框架的真正 Web 应用程序- 一组视频教程/直播,帮助您使用一些简单的库和核心 Node.js 模块构建和部署真正的实时 Web 应用程序。
发现
npms——出色的包搜索功能,使用大量指标对包质量进行深入分析。
npm addict - 您每天注入的 npm 包。
npm-compare.com - 比较和发现 npm 包。
文章
Node.js 中的错误处理
10 个步骤教你学会 Node.js
掌握 Node.js 中的文件系统
Semver:入门
Semver:波浪号和插入符号
为何异步?
理解 Node.js 事件循环
理解对象流
使用 Express 快速构建 GraphQL 服务器
时事通讯
Node Weekly - 每周通过电子邮件汇总 Node.js 新闻和文章。
视频
Ryan Dahl 介绍 Node.js
亲身体验 Node.js
V8 垃圾收集器- 关于 V8 垃圾收集器的垃圾话题。
Ryan Dahl 撰写的《我对 Node.js 感到遗憾的 10 件事》 ——Node.js 创建者对其一些局限性的深刻见解。
掌握 Node.js 中的 REST API:从零到英雄- 有关如何使用 Node.js 制作 REST API 的视频课程。
制作原始的 Node.js REST API - 无需使用 Express 之类的框架即可构建 REST API。
Google I/O 2009 - V8:高性能 JavaScript 引擎- V8 架构的基础知识以及它如何优化 JavaScript 执行。
Google I/O 2012 - 利用 V8 突破 JavaScript 速度限制- V8 如何优化 JavaScript 执行。
Google I/O 2013 - 使用 V8 加速 Oz:沿着黄砖路走向 JavaScript 性能- 如何利用 V8 知识检测应用程序瓶颈并优化性能。
Node.js 内部架构 | Ignition、Turbofan、Libuv - Node.js 内部工作原理,重点关注 V8 和 libuv。
libuv 简介:什么是独角兽迅猛龙? ——
libuv架构、线程池和事件循环,以及其源代码。libuv 跨平台异步 i/o -
libuv详细的架构,例如它实际使用线程的地方。您不知道 Node - ForwardJS 旧金山- 通过关于 V8、libuv、事件循环、模块、流和集群的测验解释 Node.js 内部结构。
图书
Node.js 实战
Node.js 实践
主节点
Node.js 8 的正确使用方式
专业 Node.js:构建基于 JavaScript 的可扩展软件
保护您的 Node.js Web 应用程序
Express 实际行动
实用的现代 JavaScript
掌握模块化 JavaScript
使用 Node.js 进行编程
Node.js 手册
Node.js 设计模式
博客
Node.js 博客
webapplog.com ——Practical Node.js 和 Pro Express.js 的作者 Azat Mardan 撰写的有关 Node.js 和 JavaScript 的博客文章。
课程
学习使用 Node.js 构建应用程序和 API - Wes Bos 的视频课程。
使用 Node.js 进行实时 Web
学习并理解 Node.js
Node.js 全栈开发人员课程
备忘单
Express.js
流常见问题解答- 回答有关流的常见问题,涵盖分页、事件等。
强大的 Node.js - Node.js Web 服务源代码安全分析的清单。
工具
OctoLinker - Chrome 扩展程序,可链接 GitHub 上 package.json、.js、.jsx、.coffee 和 .md 文件中的依赖项。
npm-hub - Chrome 扩展程序,用于在 repo 自述文件的底部显示 npm 依赖项。
RunKit - 在任何网站上嵌入 Node.js 环境。
github-npm-stats - Chrome 扩展程序,显示 GitHub 上的 npm 下载统计信息。
npm semver 计算器- 直观地探索 semver 范围与哪些版本的包相匹配。
CodeSandbox - 在线 IDE 和原型设计。
Amplication - 自动生成功能齐全的应用程序。
RunJS——桌面 JavaScript 游乐场。
社区
堆栈溢出
Reddit
叽叽喳喳
哈希节点
不和谐
各种各样的
nodebots——由 JavaScript 驱动的机器人。
node-module-boilerplate - 用于启动创建节点模块的样板。
modern-node - 使用 Jest、Prettier、ESLint 和 Standard 创建节点模块的工具包。
generator-nm-搭建一个节点模块。
Microsoft Node.js 指南- 在 Microsoft 平台上使用 Node.js 的提示、技巧和资源。
模块请求和想法- 请求您希望存在的 JavaScript 模块或获取模块的想法。
v8-perf - 与 V8 以及 Node.js 性能相关的注释和资源。

