nuxt-community/typescript-template をリニューアルした
August 30, 2020
code
Pull Request を掲げて少しずつ作業を始めたのが1ヶ月以上前で、Nuxt.js の更新が起きてそちらの対応の度に思い出す状態となっていたので、まとまった時間をかけて完了させた。
丸ごと構成を変えてしまうような Pull Request の場合、 diff が diff の体を成さない感じがして、当初はどう進めようかと悩んだのだが、GitHub がプライマリなブランチの名前を master から main へ移行させる流れにあやかって、 main ブランチとして作業をして、ただそれを差し替えるという手段をとった。前のものも master としてしばらく生かしておくことで、不測の事態の時には切り戻せばいいかという気になってじゃんじゃんと書き換えを進めた。
- vue-cli の前メジャーバージョンのセットアップコマンド
vue init
に依存していたのを脱却して GitHub Template Repository の形に - モダンっぽい3種のコンポーネントの書き方 Options/Class/Composition で Nuxt.js の基本的な機能を使うサンプルを提供
- Vuex の型周りが辛いのをあらわにして、Vuex 4を待つ状態に
- Nuxt.js チームがメンテナンスしている ESLint Config を使用
- CircleCI から GitHub Actions へ(メンテナの権限の管理が独立していて辛いので寄せたかった)
など、今までの不満をざっと解決していった。
当初このリポジトリは、あまりに雑なまま放置されていたので自分版を作っていたのだが、
コアメンバーと話す機会があった時に、どうなってんのと尋ねたらコントリビュータにされるという定番っぽい流れで淡々とメンテナンスしていた。create-nuxt-app が TypeScript にも対応しくれる頃にはその責が解かれると思っていたら、色んなツールのサンプルが詰まり過ぎているが故に、Nuxt.js 本体側の更新への追従すらも早いとは言えない状況となっているのもあって(Pull Request を送ろうと思ったこともあったが対応しているツールが多すぎて、その全てをカバーして検証する必要がわかったところで心が折れた)、こちらはこちらでまだメンテナンスする意義があるよう。