首頁 > web前端 > js教程 > 開發人員的 Node.js 資源:您需要的指南、函式庫和工具

開發人員的 Node.js 資源:您需要的指南、函式庫和工具

Susan Sarandon
發布: 2024-12-29 03:56:09
原創
612 人瀏覽過

  Node.js Resources for Developers: Guides, Libraries, and Tools You Need

創建者: 0x1da49

探索我收集的創新資源:

  • 0x3d - @0x3d_site
  • 0x4c - @0x4c-quest
  • 0x5a
  • 0x6g
  • 0x7b
  • 0x8h
  • Newwz.Space
  • Gittech - @gittech

內容

  • 官方
  • 套餐
    • 瘋狂科學
    • 命令列應用程式
    • 函數式程式設計
    • HTTP
    • 調試/分析
    • 記錄
    • 命令列實用程式
    • 建置工具
    • 硬體
    • 模板
    • 網路框架
    • 文件
    • 檔案系統
    • 控制流程
    • 直播
    • 即時
    • 圖片
    • 文字
    • 數字
    • 數學
    • 日期
    • 網址
    • 資料驗證
    • 解析
    • 人性化
    • 壓縮
    • 網路
    • 資料庫
    • 測試
    • 安全
    • 基準測試
    • 縮小器
    • 身份驗證
    • 授權
    • 電子郵件
    • 作業隊列
    • Node.js 管理
    • 跨平台整合
    • 自然語言處理
    • 流程管理
    • 自動化
    • AST
    • 靜態站點產生器
    • 內容管理系統
    • 論壇
    • 部落格
    • 奇怪
    • 連載
    • 雜項
  • 套件管理器
  • 資源
    • 教學
    • 發現
    • 文章
    • 時事通訊
    • 影片
    • 書籍
    • 部落格
    • 課程
    • 備忘單
    • 工具
    • 社區
    • 雜項
  • 相關清單

官方的

  • 網站
  • 文件
  • 儲存庫

套餐

瘋狂的科學

  • webtorrent - Node.js 和瀏覽器的串流 torrent 用戶端。
  • peerflix - 串流媒體 torrent 用戶端。
  • ipfs - 分散式檔案系統,旨在將所有運算設備連接到相同檔案系統。
  • stackgl - WebGL 的開放軟體生態系統,建構在 browserify 和 npm 之上。
  • peerwiki - BitTorrent 上的所有維基百科。
  • peercast - 將 torrent 視訊串流傳輸到 Chromecast。
  • BitcoinJS - 乾淨、可讀、經過驗證的比特幣庫。
  • Bitcore - 純粹且強大的比特幣函式庫。
  • PDFKit - PDF 生成庫。
  • turf - 模組化地理空間處理和分析引擎。
  • webcat - 使用 WebRTC 在網路上進行 p2p 管道,該管道使用您的 GitHub 私鑰/公鑰進行身份驗證。
  • NodeOS - 第一個由 npm 提供支援的作業系統。
  • YodaOS - 人工智慧作業系統。
  • Brain.js - 機器學習框架。
  • Pipcook - 用於創建機器學習管道的前端演算法框架。
  • Cytoscape.js - 圖論(又稱網路)建模和分析。
  • js-git - Git 的 JavaScript 實作。
  • xlsx - 純 JS Excel 電子表格閱讀器和編寫器。
  • isomorphic-git - Git 的純 JavaScript 實作。

命令列應用程式

  • np - 更好的 npm 發布。
  • npm-name - 檢查 npm 上的軟體包名稱的可用性。
  • gh-home - 在目前目錄中開啟儲存庫的 GitHub 頁面。
  • npm-home - 開啟套件的 npm 頁面。
  • 垃圾 - rm 的更安全替代品。
  • speed-test - 測試您的網路連線速度和 ping。
  • pageres - 擷取網站螢幕截圖。
  • cpy - 複製檔案。
  • vtop - 更好的頂部,有漂亮的圖表。
  • 清空垃圾箱 - 清空垃圾箱。
  • is-up - 檢查網站是開啟還是關閉。
  • is-online - 檢查網路連線是否已連線。
  • public-ip - 取得您的公用 IP 位址。
  • Clipboard-cli - 複製並貼上到終端上。
  • XO - 使用 JavaScript 幸福風格強制執行嚴格的程式碼風格。
  • ESLint - JavaScript 的可插入 linting 實用程式。
  • David - 當你的套件 npm 依賴項過期時告訴你。
  • http-server - 簡單、零設定的命令列 HTTP 伺服器。
  • Live Server - 具有 livereload 功能的開發 HTTP 伺服器。
  • bcat - 將指令輸出傳送到網頁瀏覽器。
  • normit - 在您的終端中進行語音合成的Google翻譯。
  • fkill - 出色地殺死過程。跨平台。
  • pjs - 可管道化的 JavaScript。從終端快速過濾、映射和減少。
  • 許可證檢查器 - 檢查應用程式依賴項的許可證。
  • browser-run - 在瀏覽器環境中輕鬆執行程式碼。
  • tmpin - 為任何接受文件輸入的 CLI 應用程式新增標準輸入支援。
  • 壁紙 - 更改桌面壁紙。
  • pen - 從您最喜歡的編輯器在瀏覽器中即時 Markdown 預覽。
  • 深色模式 - 切換 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 種貨幣之間進行轉換。
  • 任務簿 - 命令列棲息地的任務、看板和註釋。
  • discharge - 輕鬆將靜態網站部署到 Amazon S3。
  • npkill - 輕鬆找到並刪除舊的和沈重的 n​​ode_modules 資料夾。

函數式程式設計

  • lodash - 提供一致性、客製化、效能和附加功能的實用程式庫。更好更快的 Underscore.js。
  • immutable - 不可變的資料集合。
  • Ramda - 實用程式庫,專注於透過自動柯里化和反向參數順序實現的靈活功能組合。避免改變數據。
  • Mout - 實用程式庫與其他現有解決方案最大的區別是您可以選擇僅加載您需要的模組/功能,沒有額外的開銷。
  • RxJS - 用於轉換、組合和查詢各種資料的功能反應庫。
  • Kefir.js - 專注於高效能和低記憶體使用量的反應式函式庫。

HTTP協定

  • 得到 - 內建 http 模組的更好的介面。
  • undici - 從頭開始編寫的高效能 HTTP 用戶端,零依賴性。
  • ky-universal - 基於 Fetch 的通用 HTTP 用戶端。
  • node-fetch - Node.js 的 window.fetch。
  • axios - 基於 Promise 的 HTTP 用戶端(也可以在瀏覽器中運作)。
  • superagent - HTTP 請求庫。
  • http-fake-backend - 透過可設定的路由提供 JSON 檔案或 JavaScript 物件的內容來建立假後端。
  • cacheable-request - 使用 RFC 相容的快取支援包裝本機 HTTP 請求。
  • gotql - 基於 got 建置的 GraphQL 請求庫。
  • global-agent - 可使用環境變數進行設定的全域 HTTP/HTTPS 代理程式。
  • Smoke - 具有記錄功能的基於檔案的 HTTP 模擬伺服器。
  • 最純粹 - 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 - 可以想像到的最簡單的記錄器,支援日誌等級和自訂前綴。
  • 分鏡 - 端到端、分層、即時、豐富多彩的日誌和故事。
  • consola - 控制台記錄器。

命令列實用程式

  • chalk - 終端字串樣式正確完成。
  • meow - CLI 應用程式助理。
  • yargs - 自動產生優雅的使用者介面的命令列解析器。
  • ora - 優雅的終端旋轉器。
  • get-stdin - 更簡單的標準輸入。
  • log-update - 透過覆蓋終端機中先前的輸出來記錄。對於渲染進度條、動畫等很有用
  • Ink - React 用於互動式命令列應用程式。
  • listr2 - 終端任務清單。
  • conf - 您的應用程式或模組的簡單配置處理。
  • ansi-escapes - 用於操作終端的 ANSI 轉義碼。
  • log-symbols - 各種日誌等級的彩色符號。
  • 數字 - 帶有 Windows CMD 後備的 Unicode 符號。
  • boxen - 在終端機中創建盒子。
  • Terminal-link - 在終端中建立可點擊的連結。
  • Terminal-image - 在終端機中顯示影像。
  • string-width - 取得字串的視覺寬度 - 顯示它所需的列數。
  • cli-truncate - 在終端機中將字串截斷為特定寬度。
  • 祝福 - 類似詛咒的庫。
  • Inquirer.js - 互動式命令列提示字元。
  • yn - 解析是/否等值。
  • cli-table3 - 漂亮的 unicode 表。
  • drawille - 使用 unicode 點字字元在終端上繪製。
  • ascii-charts - 終端機中的 ASCII 長條圖。
  • 進度 - 靈活的 ascii 進度條。
  • 洞察力 - 透過向 Google Analytics 匿名報告使用指標,幫助您了解工具的使用情況。
  • cli-cursor - 切換 CLI 遊標。
  • cli-columns - 列式 unicode 和 ansi 安全文字清單。
  • cfonts - 主機的性感 ASCII 字體。
  • multispinner - 多個、同時、單獨控制的 CLI 旋轉器。
  • omelette - Shell 自動補全助手。
  • cross-env - 設定跨平台環境變數。
  • shelljs - 便攜式 Unix shell 指令。
  • sudo-block - 阻止使用者使用 root 權限來執行您的應用程式。
  • Sparkly - 產生迷你圖 ▂▃▅▂▇。
  • Bit - 跨儲存庫建立、維護、尋找和使用小模組和元件。
  • 漸層字串 - 終端輸出中美麗的顏色漸層。
  • ocif - CLI 框架,配備解析器、自動文件、測試和插件。
  • Terminal-size - 可靠地取得終端視窗大小。
  • 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 框架。
  • 序列埠 - 存取序列埠以進行讀寫。
  • 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 影響的高性能模板引擎。

網路框架

  • 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 Web 框架。 (你可能喜歡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 - 用於在 Express.js 或 Koa.js 之上建立伺服器端應用程式的直覺 TypeScript 框架。
  • Hono - 小而快速的網路框架。

文件

  • Documentation.js - API 文件產生器,支援 ES2015 和流註解。
  • Docco - 文件產生器,可產生 HTML 文檔,顯示與程式碼混合的註解。
  • JSDoc - 類似 JavaDoc 或 PHPDoc 的 API 文件產生器。
  • Docusaurus - 利用 React 和 Markdown 的文件網站產生器,並具有翻譯和版本控制功能。

檔案系統

  • del - 使用 glob 刪除檔案/資料夾。
  • globby - 支援多種模式的 Glob 檔案。
  • chokidar - 檔案系統觀察器,可穩定來自 fs.watch 和 fs.watchFile 的事件以及在 macOS 上使用本機 fsevents。
  • find-up - 透過向上尋找父目錄來尋找檔案。
  • proper-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 - 記憶 Promise 返回函數,具有過期和預取功能。
    • Valvelet - 限制承諾返回函數的執行率。
    • p-map - 同時映射 Promise。
    • 更多...
  • 可觀察值
    • RxJS - 響應式程式設計。
    • observable-to-promise - 將 Observable 轉換為 Promise。
    • 更多...
    • Highland.js - 只需使用標準 JavaScript 和類似 Node 的串流即可輕鬆管理同步和非同步程式碼。

  • get-stream - 取得字串或緩衝區形式的流。
  • from2 - ReadableStream 的便利包裝器,受到 through2 的啟發。
  • into-stream - 將緩衝區/字串/陣列/物件轉換為流。
  • duplexify - 將可寫入和可讀流轉換為單一streams2雙工流。
  • Pumpify - 將一組流組合成一個雙工流。
  • peek-stream - 轉換流,讓您在決定如何解析它之前先查看第一行。
  • binary-split - 換行符號(或任何分隔符號)分割器流。
  • byline - 超簡單的逐行流閱讀器。
  • first-chunk-stream - 轉換流中的第一個區塊。
  • pad-stream - 填滿流中的每一行。
  • 多流 - 將多個流合併為一個流。
  • 可讀流 - 核心中 Streams2 和 Streams3 實作的鏡像。
  • through2-concurrent - 同時轉換物件流。

即時的

  • µWebSockets - 高度可擴展的 WebSocket 伺服器和用戶端程式庫。
  • Socket.io - 實現基於事件的即時雙向通訊。
  • Faye - 基於 Bayeux 協定的即時客戶端-伺服器訊息匯流排。
  • SocketCluster - 可在多個 CPU 核心上執行的可擴充 HTTP WebSocket 引擎。
  • Primus - 即時框架的抽象層,用於防止模組鎖定。
  • deepstream.io - 可擴展的即時微服務框架。
  • Kalm - 低階套接字路由器和中介軟體框架。
  • MQTT.js - MQTT 用戶端 - 基於 Pub-sub 的訊息協議,在 TCP/IP 之上使用。
  • rpc-websockets - 透過 WebSockets 實作 JSON-RPC 2.0。
  • Aedes - Barebone MQTT 伺服器,可以在任何串流伺服器上運作。

影像

  • Sharp - 用於調整 JPEG、PNG、WebP 和 TIFF 影像大小的最快模組。
  • image-type - 偵測影像的類型。
  • image-dimensions - 取得影像的尺寸。
  • gm - GraphicsMagick 和 ImageMagick 包裝器。
  • lwip - 不需要 ImageMagick 的輕量級影像處理器。
  • pica - 純 JS 中的高品質和快速調整大小(lanczos3)。當不允許像素化時,替代畫布drawImage()。
  • jimp - 純 JavaScript 中的影像處理。
  • qrcode - 二維碼和條碼產生器。
  • ImageScript - JavaScript 中的影像處理,利用 WebAssembly 提升效能。

文字

  • iconv-lite - 轉換字元編碼。
  • string-length - 透過正確計算星體符號並忽略 ansi 轉義碼來取得字串的實際長度。
  • 駝峰命名法 - 將破折號/點/底線/空格分隔的字串轉換為駝峰命名法:foo-bar → fooBar.
  • escape-string-regexp - 轉義 RegExp 特殊字元。
  • splice-string - 刪除或取代字串的一部分,如 Array#splice。
  • indent-string - 縮排字串中的每一行。
  • strip-indent - 去除字串中每一行的前導空格。
  • detector-indent - 偵測程式碼的縮排。
  • he - HTML 實體編碼器/解碼器。
  • i18n-node - 具有動態 JSON 儲存的簡單翻譯模組。
  • babelfish - i18n 有非常簡單的複數語法。
  • matcher - 簡單的通配符匹配。
  • unhomoglyph - 標準化視覺上相似的 unicode 字元。
  • i18next - 國際化框架。
  • nanoid - 微型、安全性、URL 友善、唯一的字串 ID 產生器。
  • StegCloak - 將秘密隱藏在字串中,一目了然。

數位

  • random-int - 產生一個隨機整數。
  • random-float - 產生隨機浮點數。
  • unique-random - 產生連續唯一的隨機數。
  • round-to - 將數字四捨五入到特定的小數位數: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 → sindresorhus.com。
  • url-unshort - 展開縮短的 URL。
  • talkurl - 從帶有音譯的字串產生一個 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 模式驗證器。支持 v5、v6 和 v7 提案。
  • Superstruct - 在 JavaScript(和 TypeScript)中驗證資料的簡單且可組合的方式。
  • 是的 - 物件模式驗證。
  • zod - 使用靜態類型推斷的 TypeScript-first 模式驗證。

解析

  • 備註 - 由外掛程式支援的 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。
  • clean-csv - 快速 CSV 解析器。以上的回呼介面。
  • csv-parser - 串流 CSV 解析器,設計比其他人更快。
  • PEG.js - 簡單的解析器產生器,可產生具有出色錯誤報告的快速解析器。
  • x-ray - 網頁抓取實用程式。
  • 近利 - 簡單,快速,強大的 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 - 到純 js 的高速 zlib 連接埠(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 驅動程式。
  • ODM / ORM
    • Sequelize - 多方言 ORM。支援 PostgreSQL、SQLite、MySQL 等。
    • Bookshelf - 採用 Backbone.js 風格的 PostgreSQL、MySQL 和 SQLite3 的 ORM。
    • Mongoose - 優雅的 MongoDB 物件建模。
    • Waterline - 與資料儲存無關的工具,可大幅簡化與一個或多個資料庫的互動。
    • OpenRecord - 適用於 PostgreSQL、MySQL、SQLite3 和 RESTful 資料儲存的 ORM。類似於 ActiveRecord。
    • pg-promise - 使用 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 - 用 Ja​​vaScript 編寫的嵌入式持久性資料庫。
    • 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 - 在 istanbul 上建置的程式碼覆蓋工具,可與子流程搭配使用。
  • 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 - 端對端測試。
  • 木偶師 - 無頭 Chrome。
  • Playwright - 使用單一 API 的 Headless Chromium、WebKit 和 Firefox。
  • nve - 在本地多個版本的 Node.js 上執行任何指令。
  • axe-core - 用於自動化 Web UI 測試的輔助功能引擎。
  • testcontainers-node - 提供通用資料庫、Selenium Web 瀏覽器或任何其他可以在 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 伺服器。
  • email-templates - 建立、預覽和發送自訂電子郵件範本。
  • MJML - 旨在減少建立響應式電子郵件的痛苦的標記語言。

作業佇列

  • bull - 持久作業和訊息佇列。
  • 議程 - 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 虛擬環境。
  • nvm for Windows - 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 距離演算法測量兩個字串之間的差異。
  • natural - 自然語言設施。
  • nlp.js - 建構機器人,具有實體提取、情緒分析、自動語言辨識等功能。

流程管理

  • PM2 - 高階流程管理器。
  • nodemon - 監視應用程式中的變更並自動重新啟動伺服器。
  • node-mac - 作為本機 Mac 守護程序運行腳本並登入控制台應用程式。
  • node-linux - 作為本機系統服務運行腳本並記錄到系統日誌。
  • node-windows - 作為本機 Windows 服務執行腳本並登入事件檢視器。
  • Supervisor - 當腳本崩潰時重新啟動腳本或在 *.js 檔案變更時重新啟動。
  • Phusion Passenger - 直接整合到 Nginx 的友善流程管理器。

自動化

  • robotsjs - 桌面自動化:控制滑鼠、鍵盤並閱讀螢幕。
  • nut.js - 跨平臺本機 GUI 自動化/測試框架,具有與 Jest 整合的影像匹配功能。

穀草轉氨酶

  • Acorn - 小型、快速的 JavaScript 解析器。
  • babel-parser - Babel 中使用的 JavaScript 解析器。

靜態站點產生器

  • DocPad - 具有動態功能和龐大插件生態系統的靜態站點產生器。
  • docsify - Markdown 文件網站產生器,沒有靜態建置的 HTML 檔案。
  • Charge - 使用 JSX 和 MDX 的自以為是的零配置靜態站點產生器。

內容管理系統

  • KeystoneJS - 基於 Express 和 MongoDB 建置的 CMS 和 Web 應用程式平台。
  • ApostropeCMS - 內容管理系統,重點是基於 Express 和 MongoDB 建構的直覺前端內容編輯和管理。
  • Strapi - 內容管理框架(headless-CMS),用於建立強大的 API。
  • Factor - Vue.js 儀表板框架和無頭 CMS。
  • AdminBro - 自動產生的管理面板,為您的所有資源提供 CRUD。
  • Graphweaver - CMS 和無頭 GraphQL API。

論壇

  • nodeBB - 現代網路的論壇平台。

寫部落格

  • Ghost - 簡單、強大的發布平台。
  • Hexo - 快速、簡單且功能強大的部落格框架。

詭異的

  • 乳牛 - ASCII 乳牛。
  • 一流 - 變得像詞語一樣一流。
  • 貓名 - 取得流行的貓名。
  • 狗名 - 取得流行的狗名。
  • 超級英雄 - 取得超級英雄的名字。
  • supervillains - 取得超級惡棍的名字。
  • Cool-ascii-faces - 獲得一些很酷的 ascii 面孔。
  • cat-ascii-faces - ₍˄·͈༝·͈˄₎◞ ̑̑ෆ⃛ (=ↀωↀ=)✧ (^・o・^)ノ」。
  • 書呆子 - 從哈利波特、星球大戰和神奇寶貝等書呆子主題中獲取數據。

序列化

  • snappy - Google Snappy 壓縮程式庫的本機綁定。
  • protobuf - 協定緩衝區的實作。
  • Compactr - Compactr 協議的實作。

各種各樣的

  • execa - 更好的 child_process。
  • Cheerio - 專為伺服器設計的核心 jQuery 的快速、靈活和精益實現。
  • open - 開啟網站、檔案、執行檔等內容。
  • hasha - 哈希變得簡單。取得緩衝區/字串/流/檔案的雜湊值。
  • dot-prop - 使用點路徑從嵌套物件取得屬性。
  • onetime - 只運行一次函數。
  • mem - 記憶函數 - 一種最佳化技術,用於透過快取具有相同輸入的呼叫結果來加速連續函數呼叫。
  • strip-bom - 從字串/緩衝區/流剝離 UTF-8 位元組順序標記 (BOM)。
  • os-locale - 取得系統區域設定。
  • ssh2 - SSH2 客戶端和伺服器模組。
  • adit - SSH 隧道變簡單。
  • file-type - 偵測 Buffer 的檔案類型。
  • 瓶頸 - 速率限制器,使節流變得容易。
  • 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 - 磁碟空間高效率的套件管理器。
  • 紗線 - 替代套件管理器。
  • Bun - 適用於 JavaScript 和 TypeScript 應用程式的多合一工具包。

資源

教學

  • Node.js 最佳實踐 - Node.js 最佳實踐排名靠前的內容的總結和管理,提供多種語言版本。
  • Nodeschool - 透過互動課程學習 Node.js。
  • Node 的藝術 - Node.js 簡介。
  • module-best-practices - 編寫新 npm 模組時的一些良好實踐。
  • Node Way - Node.js 最佳實踐和指導原則的完整哲學,用於編寫可維護的模組、可擴展的應用程式和實際上令人愉悅的程式碼。
  • 你不知道的 Node.js - Node.js 核心功能和非同步 JavaScript 簡介。
  • 可移植 Node.js 指南 - 如何編寫可移植/跨平台 Node.js 程式碼的實用指南。
  • 建立一個沒有框架的真正的 Web 應用程式 - 一組視訊教學/直播,可幫助您使用一些簡單的程式庫和核心 Node.js 模組來建立和部署一個真正的即時 Web 應用程式。

發現

  • npms - 出色的包搜索,使用大量指標對包質量進行深入分析。
  • npm 上癮者 - 你每天注入 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 Garbage Collector - 關於 V8 垃圾收集器的垃圾談論。
  • Ryan Dahl 的《關於 Node.js 我後悔的 10 件事》 - Node.js 的創建者關於其一些局限性的富有洞察力的演講。
  • Mastering REST APIs in Node.js: Zero-To-Hero - 有關如何使用 Node.js 製作 REST API 的影片課程。
  • Make a vanilla 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 - Accelerated Oz with V8: Follow the Yellow Brick Road to JavaScript Performance - 如何利用 V8 知識檢測應用程式瓶頸並優化效能。
  • Node.js 內部架構 | Ignition、Turbofan、Libuv - Node.js 內部運作原理,重點放在 V8 和 libuv。
  • libuv 簡介:什麼是 Unicorn Velociraptor? - libuv 架構、執行緒池和事件循環及其原始程式碼。
  • libuv 跨平台異步 I/O - libuv 架構詳細信息,例如它實際使用線程的位置。
  • You Don't Know Node - ForwardJS San Francisco - 透過有關 V8、libuv、事件循環、模組、流和集群的測驗解釋 Node.js 內部結構。

圖書

  • Node.js 實際應用
  • Node.js 實作
  • 掌握節點
  • Node.js 8 的正確方式
  • 專業 Node.js:建立基於 JavaScript 的可擴充軟體
  • 保護您的 Node.js Web 應用程式
  • 表達行動
  • 實用現代 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
  • 流常見問題 - 回答有關流的常見問題,涵蓋分頁、事件等。
  • Strong Node.js - Node.js Web 服務原始碼安全分析清單。

工具

  • OctoLinker - Chrome 擴展,可連結 GitHub 上的 package.json、.js、.jsx、.coffee 和 .md 檔案中的依賴項。
  • npm-hub - Chrome 擴展,用於在儲存庫自述檔案的底部顯示 npm 依賴項。
  • RunKit - 在任何網站上嵌入 Node.js 環境。
  • github-npm-stats - Chrome 擴展,顯示 GitHub 上的 npm 下載統計資料。
  • npm semver 計算器 - 直觀地探索 semver 範圍匹配的軟體包版本。
  • CodeSandbox - 線上 IDE 和原型設計。
  • 放大 - 自動產生功能齊全的應用程式。
  • 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 效能相關的註解和資源。

創建者: 0x1da49

探索我收集的創新資源:

  • 0x3d - @0x3d_site
  • 0x4c - @0x4c-quest
  • 0x5a
  • 0x6g
  • 0x7b
  • 0x8h
  • Newwz.Space
  • Gittech - @gittech

以上是開發人員的 Node.js 資源:您需要的指南、函式庫和工具的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板