プログラムを消すライブラリrice-ballを作った

皆さんおはこんばんにちは、ゆいです

今回はTypeScriptでライブラリを作ったのでその話をしようと思います。

www.npmjs.com

これなあに?

rice-ballは特定のコメントパターンに基づいてコードを削除するTypeScript製のライブラリになります。

rice-ballと言う名前の由来は私の推している声優さんの高田憂希さんが演じるTokyo 7th シスターズ天堂寺ムスビと言うキャラクターのムスビと言う名前からおむすび->rice ballと言う感じで着けました。

777☆SISTERSしか勝たん

以下のようにコメント記述してnpmでインスコしたrice-ballを実行することで指定したコードブロックを削除したりファイル毎削除することができます コメントのパターンはREADMEを参照ください。

befor:

export default function example(): void {
  const scream = '高田憂希しか好きじゃない'
  /* rice-ball start example-flag */
  console.log(scream)
  /* rice-ball end example-flag */
}

after:

export default function example(): void {
  const scream = '高田憂希しか好きじゃない'
}

なんで作ったの?

※なぜコードを削除するライブラリが欲しかったのかはphp-delの過去記事で詳しく書かれているのでこちらを参照ください。

久保田さんの開発されたphp-delはvueやjs, tsなどのファイルに対応しておらず、 フロントエンドのコード削除が手作業でやる必要があったので、基本コンセプトは同じ内容でテキストファイルであれば基本的に全部サポートするライブラリを作ってしまえば良いじゃんと思い開発したと言うところです。

OSSを開発してみての感想

初めてOSSとしてnpmで配信するライブラリを開発してみてこんな事を感じました

とりあえず作ってみるでも良い

これは久保田さんもphp-delの記事でも書かれていますが、万人ウケするものではなく、自分たちのニーズに応える物でも良いという風に感じました。 規模が小さくペルソナが身内だとしても、ニーズに応えられるツールを開発すると言うのはとても刺激的で、開発意欲も湧いて楽しく開発することができました。

ちょっとした便利ツールなど小物でも実際に作ってみると言う部分は中々難しいところだと思いますが、作り始めてしまえば小さな物でもニーズに応えることはできるのだと言うのを改めて実感しました。

最後に

少しでもいいなと思ってもらえたらstarつけてください!

そして最後に、高田憂希しか好きじゃない!

以上になります。

現在採用中です!

組織拡大!急成長中スタートアップでエンジニアリングマネージャーを募集!! - 株式会社M&AクラウドのWebエンジニアの採用 - Wantedly