(雑記)趣味ツール開発:eslintとPrettierの導入、あと型の整理
概要
趣味で開発している、イベント告知ツール(Web アプリ)のメンテナンスを少し進めたのでその進捗を書きます。
https://github.com/yuya-0928/eventAnnounceBot/pull/2
目次
どんなツール?
Web アプリと、TwitterBot と、DiscordBot を組み合わせたアプリです。
local でアプリを立ち上げると、DiscordBot も立ち上がるようになっています。
Twitter にログインして、日付とイベント回数を指定すると、以下のことを自動でやってくれます。
- Twitter へイベント告知ツイートの投稿
- Discord チャンネルへ告知の投稿
- VRC イベントカレンダーを開く(情報入力済み)
この PR でやったこと
https://github.com/yuya-0928/eventAnnounceBot/pull/2
最近、設計の本を読み進めていて、そこで得た知識をこの BOT 開発に役立てたいなと考えて作業を進めています。
また、このツールを VRC でイベントをやっているイベンター向けに、使いやすい形式に改造して公開できれば良いなと考えています。
この PR でやったことは、以下の通りです。
- eslint の導入
- Prettier の導入
- 型を適当に書いていた部分を、厳密に書き直す。
そういえば、lint 何も入れてなかったなと思い、簡単に導入をしました。
最初は公開するつもりもなく、個人的に使うだけの使い捨てコードの想定で書いていたので、だいぶ雑にコードを書いてしまっていました。そのため、lint にだいぶ怒られてしまうようなコードになっていました。
lint 最初に導入するの大事ですね。lint のありがたさを最近感じる機会が多いです。
また、型を適当に書いていた部分を厳密に書き直してみると、「なんでここ、こういう構成にしているのだっけ?」と疑問に思う部分が複数箇所出てきました。リファクタリングチャンスですね。
主に、TwitterAPI 周辺のコードで、「この部分って、なんの型が入ってくるんだろう」と迷いポイントがありました。時間があるときにドキュメントを読もうと思いました。
今後の目標
最近読んだ、「現場で役立つシステム設計の原則」で得た知識を使って、このプロジェクトを改善していこうと考えています。また、他の設計に関する本で得た知識も活用して、このプロジェクトを改善していこうと考えています。
VR でイベント開催をするときに使える便利なアプリへとしていきたいです。それに応じて、機能を増やしたり、デスクトップアプリ化もしたいですね。
TwitterAPI のトークンを発行したり、DiscordBot のトークンを発行しないと使えないアプリになってしまっているので、その問題もいずれは解決したいですね。
(雑記)趣味ツール開発:eslintとPrettierの導入、あと型の整理