https://github.com/MengFangui/awesome-nodejs
node常用库
https://github.com/MengFangui/awesome-nodejs
List: awesome-nodejs
Last synced: 3 months ago
JSON representation
node常用库
- Host: GitHub
- URL: https://github.com/MengFangui/awesome-nodejs
- Owner: MengFangui
- License: mit
- Created: 2022-02-02T10:20:48.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-03-13T07:07:05.000Z (12 months ago)
- Last Synced: 2024-04-19T11:05:15.720Z (10 months ago)
- Size: 55.7 KB
- Stars: 1
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- ultimate-awesome - awesome-nodejs - Node常用库. (Programming Language Lists / JavaScript Lists)
README
> 该项目受 [awesome-nodejs](https://github.com/sindresorhus/awesome-nodejs) 启发
## 目录
- [目录](#目录)
- [官方资源](#官方资源)
- [资源](#资源)
- [常用依赖包](#git-仓库)## 官方资源
- [官网](https://nodejs.org)
- [文档](https://nodejs.org/dist/latest/docs/api/)
- [仓库](https://github.com/nodejs/node)## 资源
### 工具
- [openbase](https://openbase.com/) - 让你每次都要找到合适的包。
- [npm.devtool](https://npm.devtool.tech/) - 找到最适合您的包,分析您的项目技术栈。## GIT 仓库
### 文本/字符串
- 通用
- [voca](https://github.com/panzerdp/voca) - 字符串处理。 
- 唯一 ID
- [nanoid](https://github.com/ai/nanoid) - 小巧、安全、URL 友好、唯一的字符串 ID 生成器。 
- [uuid](https://github.com/uuidjs/uuid) - 在 JavaScript 中生成符合 RFC 规范的 UUID。 ### 数字
- [Numeral.js](https://github.com/adamwdraper/Numeral-js) - 格式化和操作数字。 
- [bignumber.js](https://github.com/MikeMcl/bignumber.js) - 用于任意精度十进制和非十进制算术的 JavaScript 库。 ### 数学运算
- [mathjs](https://github.com/josdejong/mathjs) -为 js 和 node 的 math 库。 
### 日期/时间
- [moment](https://github.com/moment/moment) - 解析、校验、操作和显示日期。 
- [dayjs](https://github.com/iamkun/dayjs) - 仅 2KB,不可变的日期时间库。使用与 Moment.js 同样的 API,Moment.js 的替代库。 
- [timeago.js](https://github.com/hustcc/timeago.js) - timeago.js 是一个很小的(2.0 kb)库,用于使用 \*\*\* time ago 语句格式化日期。 
- [ms](https://github.com/vercel/ms) - 毫秒转换工具。 ### URL
- [qs](https://github.com/ljharb/qs) - 请求字符串解析器。 
### JSON
- [json5](https://github.com/json5/json5) - JSON5 是对 JSON 的扩展,其目的是能够对 JSON 解析和串行化更方便。 
### 图像、图片处理
- [sharp](https://github.com/lovell/sharp) - 调整 JPEG,PNG,WebP 和 TIFF 格式图像大小的最快模块。 
- [gm](https://github.com/aheckmann/gm) - GraphicsMagick 和 ImageMagick 封装。 
- [qrcode](https://github.com/soldair/node-qrcode) - 二维码和条形码生成器。 
- [FileSaver](https://github.com/eligrey/FileSaver.js/) - 客户端保存图片的方案(对于超过 blob 限制的图片请使用 StreamSaver.js)。 
- [blurhash](https://github.com/woltapp/blurhash) - 图片模糊化。 #### SVG
- [svg-captcha](https://github.com/produck/svg-captcha) - Node.js 中生成 SVG 验证码。 
#### canvas
- [fabric](https://github.com/fabricjs/fabric.js) -可以轻松使用 HTML5 画布元素。 
### 加解密
- [crypto-js](https://github.com/brix/crypto-js) - JavaScript 加密标准库。 
- [sm-crypto](https://github.com/JuneAndGreen/sm-crypto) - sm2, sm3, sm4 的 JavaScript 实现。 ### 检测/判断
- [is.js](https://github.com/arasatasaygin/is.js) - 微型检查库。 
### 数据校验
- [validator.js](https://github.com/validatorjs/validator.js) - 字符串校验库。 
- [joi](https://github.com/hapijs/joi) - 基于 JavaScript 对象的对象模式描述语言和验证器。 
- [yup](https://github.com/jquense/yup) - 受 joi 启发的极简的对象 Schema 校验。 
- [ajv](https://github.com/epoberezkin/ajv) - 最快的 JSON Schema 验证器。支持 JSON Schema draft-04/06/07/2019-09/2020-12 and JSON 类型定义(RFC8927)。 
- [async-validator](https://github.com/yiminghe/async-validator) - 异步校验。 ### 函数式编程
- [lodash](https://github.com/lodash/lodash) - 可提供一致性、自定义、性能和其他功能的实用程序库,比 Underscore.js 更好更快。 
- [immutable](https://github.com/facebook/immutable-js) - 不可变的数据集合。 
- [RxJS](https://github.com/reactivex/rxjs) - 用于转换、组合和查询各种数据的函数式响应式库。 
- [Ramda](https://github.com/ramda/ramda) - 实用程序库着重于通过自动计算和相反的参数顺序实现的灵活功能组合,避免数据变化。 
- [immer](https://github.com/immerjs/immer) - 函数式响应式编程。 ### 脚本执行
- [zx](https://github.com/google/zx) - 用于编写更好 bash 脚本的工具(Node.js >= 14.13.1)。 
- [shelljs](https://github.com/shelljs/shelljs) - 跨平台 Unix shell 命令,同步操作。 
- [execa](https://github.com/sindresorhus/execa) - 跨平台实现子进程执行,支持 Promise。 ### 环境
- [dotenv](https://github.com/motdotla/dotenv) - 从 .env 文件 加载用于 nodejs 项目的环境变量。 
- [cross-env](https://github.com/kentcdodds/cross-env) - 跨平台设置环境变量。 ### 命令行工具
- 框架/解决方案
- [Commander.js](https://github.com/tj/commander.js) - Node.JS 命令行界面完整解决方案。 
- 命令行参数解析
- [minimist](https://github.com/substack/minimist) - 命令行参数解析引擎。 
- 提示
- [Inquirer.js](https://github.com/SBoudrias/Inquirer.js) - 通用可交互命令行工具集合。 
- [clack](https://github.com/natemoo-re/clack) - 轻松构建漂亮的命令行应用程序。 - 进度条
- [progress](https://github.com/visionmedia/node-progress) - Node.js 的灵活 ascii 进度条。 
- 样式
- [chalk](https://github.com/chalk/chalk) - 命令行字符串样式美化工具。 
- [ora](https://github.com/sindresorhus/ora) - 优雅的命令行 loading 效果。 ### Node 管理工具
- [nvm](https://github.com/nvm-sh/nvm) - Node.js 版本管理工具。 
- [n](https://github.com/tj/n) - Node.js 版本管理工具。 ### NPM
- NPM 管理工具
- [pnpm](https://github.com/pnpm/pnpm) - 快速、节省磁盘空间高效的包管理器。 
- [npm](https://github.com/npm/cli) - JavaScript 包管理工具。 
- [yarn](https://github.com/yarnpkg/berry) - 现代包管理工具,拆分成多个不同的包。 
- [nrm](https://github.com/Pana/nrm) - 快速切换 npm 服务商,如 npm、cnpm、taobao。 
- [cnpm](https://github.com/cnpm/cnpm) - NPM 中国区镜像客户端。 
- [npx](https://github.com/npm/npx#readme) - 目前已经属于 npm cli,免安装快速执行 npm 依赖。- 语义化版本
- [semver](https://github.com/npm/node-semver) - NPM 使用的 JavaScript 语义化版本号解析器。 ### Monorepo
- [lerna](https://github.com/lerna/lerna) - 用于管理具有多个包的 JavaScript 项目的工具。 
### 文件系统
- 通用
- [fs-extra](https://github.com/jprichardson/node-fs-extra) - 为 `fs` 模块提供额外方法。 
- [tmp-promise](https://www.npmjs.com/package/tmp-promise) - 创建临时目录或者文件
- [recursive-readdir](https://www.npmjs.com/package/recursive-readdir) - 递归读取文件
- [slash](https://github.com/sindresorhus/slash#readme) - 将 Windows 反斜杠路径转换为斜杠路径。
- [find-up](github.com/sindresorhus/find-up) - 通过遍历父目录来查找文件或目录。.
- [pkg-dir](github.com/sindresorhus/pkg-dir) - 查找 node.js 项目或 npm 包的根目录。
- [StreamSaver](https://github.com/jimmywarting/StreamSaver.js) - 根据我搜索的结果,StreamSaver.js 是一个 JavaScript 库,它可以将流数据直接异步写入文件系统,而不需要占用大量的内存或受到 Blob 大小的限制(StreamSaver.js 可以下载大文件。它可以处理超过 2GB 的文件,而不需要占用大量的内存或受到 Blob 大小的限制 。)下载大文件,如超过 2GB 的数据文件;下载多个文件的压缩包或合并文件;下载服务器端返回的流数据 3- 删除
- [rimraf](https://github.com/isaacs/rimraf) - 递归删除文件,类似 `rm -rf`。 
- 监控
- [watchman](https://github.com/facebook/watchman) - 监视文件和记录,或在更改时触发操作。 
- [chokidar](https://github.com/paulmillr/chokidar) - 最小且高效的跨平台 Watch 库。 - 查找
- [glob](https://github.com/isaacs/node-glob) - Node.js 版 glob 功能。 
- [globby](https://github.com/sindresorhus/globby) - 基于 fast-glob,但添加了很多有用的特性。 
- [fast-glob](https://github.com/smrmlnc/fast-glob) - 该软件包提供了遍历文件系统和返回路径名的方法。 ### 解析工具
- Markdown
- [marked](https://github.com/markedjs/marked) - Markdown 解析器和编译器,专为提高速度而设计。 
- CSV
- [PapaParse](https://github.com/mholt/PapaParse) - 快速而强大的 CSV(分隔文本)解析器,可以优雅地处理大文件和格式错误的输入,CSV 和 JSON 互转。 
- HTML
- [htmlparser2](https://github.com/fb55/htmlparser2) - 宽容的 HTML 和 XML 解析器。 
- [parse5](https://github.com/inikulin/parse5) - 用于 Node.js 的 HTML 解析/序列化工具集。 WHATWG HTML 标准(又名 HTML5)兼容。 - CSS
- [PostCSS](https://github.com/postcss/postcss) - CSS 解析工具。 ### Git
- [husky](https://github.com/typicode/husky) - 现代化的本地 Git 钩子使操作更加轻松! 
### 日志
- [winston](https://github.com/winstonjs/winston) - 多传输异步日志记录库。 
### 进程管理
- [PM2](https://github.com/Unitech/pm2) - 高级进程管理工具。 
- [nodemon](https://github.com/remy/nodemon) - 监视应用程序中的更改并自动重新启动服务器。 
- [generic-pool](https://github.com/coopernurse/node-pool#readme) - 基于 Promise API 的通用资源池。可用于重用或限制昂贵资源(如数据库连接)的使用。 ### 代码校验 和 格式化工具
- [prettier](https://github.com/prettier/prettier) - ❤"有主见"的多语言代码格式化程序。 
- [standard](https://github.com/standard/standard) - JavaScript 代码规范,自带 linter & 代码自动修正。 
- [eslint](https://github.com/eslint/eslint) - 插件化并且可配置的 JavaScript 语法规则和代码风格的检查工具。 ### 模板引擎
- [Pug](https://github.com/pugjs/pug) - 受 Haml 启发的高性能模板引擎。 
- [handlebars.js](https://github.com/wycats/handlebars.js) - Mustache 模板的超集,添加了强大的功能,如 helper 和更高级的 block。 
- [mustache.js](https://github.com/janl/mustache.js) - 轻量的 JavaScript 模板引擎{{八字须}}。 ### Web 框架
- [Express](https://github.com/expressjs/express) - Web 应用程序框架,为构建单页和多页以及混合 Web 应用程序提供了一组强大的功能。 
- [Next.js](https://github.com/zeit/next.js) - React 服务端渲染框架。 
- [blitz](https://github.com/blitz-js/blitz) - 全栈 React 框架——建立在 Next.js 之上。 
- [Nuxt.js](https://github.com/nuxt/nuxt.js) - Vue 服务端渲染框架。 
- [Nest](https://github.com/nestjs/nest) -受 Angular 启发的框架,用于构建高效且可扩展的服务器端应用程序。_(你也许会喜欢 [awesome-nestjs](https://github.com/juliandavidmr/awesome-nestjs))_ 
- [Koa](https://github.com/koajs/koa) - 由 Express 背后的团队设计的框架,旨在为 Web 应用程序和 API 提供更小,更富表现力和更强大的基础。 ### 实时通信
- [Socket.io](https://github.com/socketio/socket.io) - 实现基于事件的实时双向通信。 
- [ws](https://github.com/websockets/ws) - 简单易用,速度极快,经过全面测试的 WebSocket 客户端和服务器 Node.js 通信库。 ### 定时任务
- [cron](https://github.com/kelektiv/node-cron) - 允许您按计划执行某些任务。 
- [node-schedule](https://github.com/node-schedule/node-schedule) - 类 Cron 和不类似 Cron 的 Node.js 定时任务。 ### 调试
- [node-inspector](https://github.com/node-inspector/node-inspector) - 基于 Blink 开发者工具的调试器。 
- [ndb](https://github.com/GoogleChromeLabs/ndb) - Chrome DevTools 调试体验改进工具。 ### 缓存
- [lru-cache](https://github.com/isaacs/node-lru-cache) - 最近最少使用的缓存(LRU)实现。 
### 自动化
- [puppeteer](https://github.com/puppeteer/puppeteer) - 无头 Chrome Node.js API。 
### 压缩解压
- [jszip](https://github.com/Stuk/jszip) - 使用 JavaScript 创建、读取、编辑.zip 文件。 
- [terser](github.com/terser/terser) - JavaScript 压缩工具。 
- [Archiver](https://github.com/archiverjs/node-archiver) - JavaScript 压缩工具。 ### 最小化
- [UglifyJS](https://github.com/mishoo/UglifyJS) - JavaScript 压缩工具。 
- [imagemin](https://github.com/imagemin/imagemin) - Image 压缩工具。 ### HTTP
- 请求库
- [axios](https://github.com/mzabriskie/axios) - 基于 Promise 的 HTTP 客户端(也可以在浏览器中工作)。 
- Mock 服务
- [json-server](https://github.com/typicode/json-server) - 在不到 30 秒的时间内获得具有零编码的完整伪造的 REST API。 
- [hoppscotch](https://github.com/hoppscotch/hoppscotch) - 在线的 postman。 
- [easy-mock](https://github.com/easy-mock/easy-mock) - 可视化,并且能快速生成模拟数据的持久化服务。 - 代理
- [http-proxy](https://github.com/nodejitsu/node-http-proxy) - HTTP 代理。 
- 下载
- [download](https://github.com/kevva/download) - 轻松下载和提取文件。 ### 服务端 DOM
- [cheerio](https://github.com/cheeriojs/cheerio) - 运行在服务器端,快速、灵活和精益的 jQuery 核心功能实现。 
- [jsdom](https://github.com/jsdom/jsdom) - Node.js 版 Web 标准实现。 ### AST
- 解析器
- [astexplorer](https://github.com/fkling/astexplorer) [网址](https://astexplorer.net/#/KJ8AjD6maa) - 使用多种解析器的 AST Web 可视化工具。 ### ES Module
- esm
- [esm](https://github.com/standard-things/esm#readme) - ECMAScript 模块加载器。 ### 安全
- xss
- [Helmet](https://helmetjs.github.io/) - 防止 xss 攻击。 
- [xss](https://www.npmjs.com/package/xss) - 防止 xss 攻击。 
- csrf
- [csurf](https://github.com/expressjs/csurf#readme) - 防止 csrf 攻击。 ### 其他
- 控制输入
- [Cleave](https://github.com/nosir/cleave.js) - 控制 input 输入。 
- 正则表达式
- [any-rule](https://github.com/any86/any-rule) - 常用正则。 
- [resolve](https://github.com/browserify/resolve#readme) - 处理 node_modules 的模块,也可以使用 node 内置模块 require.resolve。 
- [open](https://github.com/sindresorhus/open) - 打开 url、文件和可执行文件,支持扩平台。 
- [node-notifier](hhttps://github.com/mikaelbr/node-notifier) - 使用 Node.js 发送跨平台通知。 
- [javascript-obfuscator](https://github.com/javascript-obfuscator/javascript-obfuscator) - JavaScript 的强大免费混淆器。 
- [fast-deep-equal](https://github.com/epoberezkin/fast-deep-equal) - 相等判断。 
- [normalize-url](https://github.com/sindresorhus/normalize-url) - url 格式化。 
- [simple-git](https://github.com/steveukx/git-js) - git api。 
- [lru-cache](https://github.com/isaacs/node-lru-cache) - lru 算法删除最近最少使用的项的缓存对象。 
- [madge](https://github.com/pahen/madge) - Madge 是一个开发工具,用于生成模块依赖关系的可视化图,查找循环依赖关系,并提供其他有用信息。 
- [jspdf](https://github.com/mrrio/jspdf) - 生成 pdf 文件。 
- [web-vitals](https://github.com/GoogleChrome/web-vitals) - chrome 官方性能检测工具。 
- [nodemailer](https://github.com/nodemailer/nodemailer) - 邮件发送。 
- [pkg](https://github.com/vercel/pkg) - 该命令行界面使您能够将 Node.js 项目打包为可执行文件,即使在没有安装 Node.js 的设备上也可以运行该可执行文件。 
- [Nano ID](https://github.com/ai/nanoid) - 个小巧、安全、URL 友好、唯一的 JavaScript 字符串 ID 生成器。 