0.0.4 • Published 5 years ago

npm_pg v0.0.4

Weekly downloads
3
License
ISC
Repository
github
Last release
5 years ago

TypeScript用 Template

環境構築

nodenv

nodenv install -l
nodenv versions
nodenv local x.x.x
nodenv rehash
nodenv version

direnv

direnv allow .

git-secrets

git secrets --register-aws --global

circleci

# フォーマットチェック
circleci config validate -c .circleci/config.yml 

# 実行
circleci build

シンボリックリンク

VSCode, wallabyjs などは app の root に configがある方が 設定が少なくて済む

ln -s configs/jest.config.js .
ln -s configs/.huskyrc.js .
ln -s configs/.eslintrc.js .
ln -s configs/.eslintignore .
ln -s configs/babel.config.js
ln -s configs/tsconfig/tsconfig.json .
ln -s configs/.jscpd.json .
ln -s configs/webpack/webpack.config.ts .
ln -s configs/wallaby.js .

# npm
ln -s configs/tsconfig/npm/tsconfig.json tsconfig.npm.json

方針

  • babel-loaderTypeScriptをトランスパイルする。のでts-loaderは使用しない
  • 型チェックは、tscでする

用語

webpack

  • webpack
    • ファイルバンドリング
  • webpack-cli
    • webpackをcli上で使用できるようにする。

babel

  • @babel/core
    • トランスパイラ
  • @babel/preset-env
    • サポートされている環境に基づいて必要なBabelプラグインを自動で決定するライブラリ
  • babel-loader
    • webpack上でbabelを使用するために必要
  • @babel/preset-typescript
    • TSからJSへトランスパイル
  • @babel/plugin-proposal-class-properties
  • @babel/plugin-proposal-object-rest-spread TypeScriptの文法には既に含まれているけど、 今はまだpreset-envには含まれていない文法も使えるようにしておく。 preset-envに含まれる日が来たら、これらのプラグインは不要になるはず。

webpack.config.ts 化

ts-node があれば tsもOK

babel.config.ts 化

まだないっぽい