前言:文章的靈感來源於,社羣中某大佬分享一個本身耗時數月維護的github項目
awesome-nodejs
。或許你跟我同樣會有一個疑惑,github上其實已經有個同類型的awesome-nodejs庫且還高達41k⭐,從新維護一個新的意義何在? 當你深刻對比後,本質上仍是有差異的,一個是分類體系粒度更細,其次是對中文更友好的翻譯維護,也包括了對國內一些優秀的開源庫的收錄。最後我我的認爲經過本身梳理,也能更好地作覆盤和總結
經過閱讀 awesome-nodejs
庫的收錄,我抽取其中一些應用場景比較多的分類,經過分類涉及的應用場景跟你們分享工具javascript
可使用如下工具:css
husky
- 現代化的本地Git鉤子使操做更加輕鬆pre-commit
- 自動在您的git儲存庫中安裝git pre-commit腳本,該腳本在pre-commit上運行您的npm test。yorkie
尤大改寫的yorkie,yorkie實際是fork husky,讓 Git 鉤子變得簡單(在 vue-cli 3x 中使用)可使用如下工具:html
download-git-repo
- 下載和提取Git倉庫 (支持GitHub, GitLab, Bitbucket)。可使用如下工具:前端
gitgraph
- 在 Terminal 繪製 git 流程圖(支持瀏覽器、React)。git-url-parse
- 高級別git解析。giturl
- 將Git連接轉化成Web連接。可使用如下工具:vue
cross-env
- 跨平臺環境腳本的設置,你能夠經過一個簡單的命令(設置環境變量)而不用擔憂設置或者使用環境變量的平臺。dotenv
- 從 .env文件 加載用於nodejs項目的環境變量。vue-cli --mode
- 能夠經過傳遞 --mode 選項參數爲命令行覆寫默認的模式可使用如下工具:java
可使用如下工具:node
read-pkg-up
- 讀取最近的package.json文件。node-pkginfo
- 從package.json讀取屬性的簡單方法。可使用如下工具:git
npm-check-updates
- 找當前package.json依賴容許的更新的版本。一般咱們要運行多腳本或許會是這樣npm run build:css && npm run build:js
,設置會更長經過&
來拼接
可使用如下工具:github
npm-run-all
- 命令行工具,同時運行多個npm腳本(並行或串行)npm-run-all提供了三個命令,分別是 npm-run-all run-s run-p,後二者是 npm-run-all 帶參數的簡寫,分別對應串行和並行。並且還支持匹配分隔符,能夠簡化script配置算法
或者使用
concurrently
- 並行執行命令,相似 npm run watch-js & npm run watch-less但更優。(不過它只能並行)可使用如下工具:
depcheck
- 檢查你的NPM模塊未使用的依賴。npminstall
- 使 npm install 更快更容易,cnpm默認使用semver
- NPM使用的JavaScript語義化版本號解析器。關於npm包在線查詢,推薦一個利器 npm.devtool.tech
log4js-nodey
- 不一樣於Java log4j的日誌記錄庫。consola
- 優雅的Node.js和瀏覽器日誌記錄庫。winston
- 多傳輸異步日誌記錄庫(古老)
咱們第一印象會想到的是
process.argv
,那麼還有什麼工具能夠解析嗎?
可使用如下工具:
可使用如下工具:
Inquirer.js
- 通用可交互命令行工具集合。prompts
- 輕量、美觀、用戶友好的交互式命令行提示。Enquirer
- 用戶友好、直觀且易於建立的時尚CLI提示。
可使用如下工具:
progress
- Node.js的靈活ascii進度條。progress-estimator
- 記錄進度條並估計完成承諾所需的時間。可使用如下工具:
listr
- 命令行任務列表。可使用如下工具:
chalk
- 命令行字符串樣式美化工具。ora
- 優雅的命令行loading效果。colors.js
- 獲取Node.js控制檯的顏色。qrcode-terminal
- 命令行中顯示二維碼。treeify
- 將javascript對象漂亮地打印爲樹。kleur
- 最快的Node.js庫,使用ANSI顏色格式化命令行文本。通常爲了項目安全性考慮,咱們一般會對帳號密碼進行加密,通常會經過MD五、AES、SHA一、SM,那開源社區有哪些庫能夠方便咱們使用?
可使用如下工具:
crypto-js
- JavaScript加密標準庫。支持算法最多node-rsa
- Node.js版Bcrypt。node-md5
- 一個JavaScript函數,用於使用MD5對消息進行哈希處理。aes-js
- AES的純JavaScript實現。sm-crypto
- 國密sm2, sm3, sm4的JavaScript實現。sha.js
- 使用純JavaScript中的流式SHA哈希。一鍵生成網站不香嗎~ 基於node體系快速搭建本身的博客網站,你值得擁有,也能夠做爲組件庫文檔展現
可使用如下工具:
hexo
- 使用Node.js的快速,簡單,強大的博客框架。vuepress
- 極簡的Vue靜態網站生成工具。(基於nuxt SSR)netlify-cms
- 基於Git的靜態網站生成工具。vitepress
- Vite & Vue.js靜態網站生成工具。
數據校驗,離咱們最近的就是表單數據的校驗,在平時使用的組件庫好比element、iview等咱們會看到使用了一個開源的校驗工具
async-validator
, 那還有其餘嗎?
可使用如下工具:
validator.js
- 字符串校驗庫。joi
- 基於JavaScript對象的對象模式描述語言和驗證器。async-validator
- 異步校驗。ajv
- 最快的JSON Schema驗證器superstruct
- 用簡單和可組合的方式在JavaScript和TypeScript中校驗數據。可使用如下工具:
marked
- Markdown解析器和編譯器,專爲提升速度而設計。remark
- Markdown處理工具。markdown-it
-支持100%通用Markdown標籤解析的擴展&語法插件。可使用如下工具:
PapaParse
- 快速而強大的 CSV(分隔文本)解析器,能夠優雅地處理大文件和格式錯誤的輸入。node-csv
- 具備簡單api的全功能CSV解析器,並針對大型數據集進行了測試。csv-parser
-旨在比其餘任何人都快的流式CSV解析器。可使用如下工具:
xml2js
- 將XML轉換爲JavaScript對象的轉換器。fast-xml-parser
- 具驗證&解析 XML。若是你喜歡這個庫,也給做者huaize2020
一個star 倉庫地址: awesome-nodejs
昨天看到一段話想分享給你們
對於一個研發測的平常:
你好,我是🌲 樹醬,請你喝杯🍵 記得三連哦~
1.閱讀完記得點個贊哦,有👍 有動力
2.關注公衆號前端那些趣事,陪你聊聊前端的趣事
3.文章收錄在Github frontendThings 感謝Star✨