有名ツールが依存していたり、ドキュメントで参照していたりするツールやライブラリから便利なものを探してみた。
フォーマット、コーディング規約、コードジェネレータ、バージョン管理
- xo https://www.npmjs.com/package/xo
- eslint https://eslint.org/
- prettier https://prettier.io/
- lint-staged https://github.com/okonet/lint-staged
- precise-commits https://github.com/nrwl/precise-commits
- pretty-quick https://github.com/azz/pretty-quick
- husky https://github.com/typicode/husky
- semver https://github.com/npm/node-semver
- mrm https://github.com/sapegin/mrm
- yeoman http://yeoman.io/
- generate https://generate.github.io/generate/
- slush http://slushjs.github.io
型
- TypeScript https://www.typescriptlang.org/
- Flow https://flow.org/en/
- check-types.js https://gitlab.com/philbooth/check-types.js
- ow https://github.com/sindresorhus/ow
タスクランナー・変更管理
- chokidar https://github.com/paulmillr/chokidar
- watchman https://facebook.github.io/watchman
- watch https://github.com/mikeal/watch
テスト・コードカバレッジ
- AVA https://www.npmjs.com/package/ava
- jest https://jestjs.io/
- Mocha https://mochajs.org
- Chai https://www.chaijs.com
- chai-as-promised https://www.chaijs.com/plugins/chai-as-promised
- Istanbul https://github.com/gotwarlost/istanbul
- power-assert https://github.com/power-assert-js/power-assert
データジェネレータ
- Chance https://chancejs.com/
- faker https://www.npmjs.com/package/faker
デバッグ、ログ表示
設定、コマンドライン処理
- yargs http://yargs.js.org/
- nconf https://www.npmjs.com/package/nconf
- minimist https://www.npmjs.com/package/minimist
- pkg-conf https://www.npmjs.com/package/pkg-conf
- inquirer https://www.npmjs.com/package/inquirer
- cosmiconfig
テンプレートエンジン
- Mustache http://mustache.github.io/
- Hogan.js https://www.npmjs.com/package/hogan.js http://twitter.github.io/hogan.js/
- ejs https://www.npmjs.com/package/ejs
ファイル・ファイル名操作
- fs-extra https://github.com/jprichardson/node-fs-extra
- replace-ext https://www.npmjs.com/package/replace-ext
- cpx https://www.npmjs.com/package/cpx
- memory-fs https://github.com/webpack/memory-fs
- mem-fs https://github.com/sboudrias/mem-fs
- vinyl https://github.com/gulpjs/vinyl
- tempy https://github.com/sindresorhus/tempy
- temp-write https://github.com/sindresorhus/temp-write
- rimraf
データ型、データ変換
- ms https://www.npmjs.com/package/ms
- array-uniq https://www.npmjs.com/package/array-uniq
- lodash https://lodash.com/
- Chance https://chancejs.com/index.html
- Moment.js https://momentjs.com/
フォーマット・表示
- as-table https://www.npmjs.com/package/as-table
- table https://www.npmjs.com/package/table
- cli-table https://www.npmjs.com/package/cli-table
- sprintf.js https://github.com/alexei/sprintf.js
- chalk https://www.npmjs.com/package/chalk
- clui https://www.npmjs.com/package/clui
- node-curses
- blessed
Web
HTTPサーバ・クライアント
サーバ
- Express http://expressjs.com/
- micro https://github.com/zeit/micro
- serve https://github.com/zeit/serve
- Now https://zeit.co/docs
クライアント
- axios https://github.com/axios/axios
- node-fetch https://github.com/bitinn/node-fetch
- isomorphic-fetch https://github.com/matthew-andrews/isomorphic-fetch
リアクティブプログラミング
- Angular
- React https://reactjs.org/ https://www.npmjs.com/package/react
- MobX https://mobx.js.org/ https://www.npmjs.com/package/mobx
- RxJS
- Vue.js + Vuex
Single Page Application/サーバサイドレンダリング
- Next.js https://nextjs.org
- Nuxt.js https://nuxtjs.org/ (邦訳 https://ja.nuxtjs.org)
- Gatsby https://www.gatsbyjs.org
他ツール連携
- mqtt https://www.npmjs.com/package/mqtt
- docker-cli-js https://www.npmjs.com/package/docker-cli-js