13
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

自社・チームのコードレビューガイドラインを作成するウィザードアプリを作りました

Posted at

CodeRabbitで登壇する際、コードレビューガイドラインの重要性を取り上げることが多いです。コードレビューガイドラインとは、チームや組織における「コードレビューの共通認識」になります。

このコードレビューガイドラインがないと、以下のような問題が起こります。

  • レビューする際の視点がわからない
  • レビューする際の視点が人によって違う
  • 気分(ノリ)で視点が変わってしまう

そうしたブレを防ぐためにも、コードレビューガイドラインが必要です。

image.png

コードレビューガイドラインを作成する際に役立つのが、コードレビュー開発者ガイド | google-eng-practices-jaです。これはGoogleが公開しているガイドラインで、「Google のコードレビューのプロセスとポリシーに関する正規の解説」となっています。なお、大元のリポジトリはアーカイブされているので、最新状況とは異なる可能性があります。

これを読みながら自社の状況に合わせるのがお勧めとしているのですが、一から作るのは大変です。そこで、このGoogleのガイドラインをベースに、ウィザード方式で自社のコードレビューガイドラインを作成できるWebアプリケーションを作ってみました。

Code Review Guideline Creatorについて

FireShot Capture 225 - Code Review Guideline Creator - [rgc.goofmint.dev].png

Code Review Guideline Creatorで利用している技術は以下の通りです。

  • Cloudflare Workers
  • React Router
  • Tailwind CSS

コードはオープンソースで、MIT Licenseとなっています。

goofmint/review-guideline-creator

作成できるガイドラインについて

Code Review Guideline Creatorでは、以下の2つのガイドラインを作成できます。

  • レビュアー向け(レビューする人)
  • レビュイー向け(レビューを受ける人)

レビュアーはどういった視点でレビューすべきか、レビュイーはPR提出前にどういった点に配慮すべきかなどを示されています。

ウィザードについて

基本的に質問に回答していくだけです。なるべくデフォルトを設けています。

設問の内容はMarkdownファイルで用意していて、そのファイルを読み込みながらウィザードに反映しています。

この内容を修正すれば、ウィザードも変更されます。なお、設問数は約60問で割と多いので注意してください。

データ保存について

データはサーバー側には一切保存しません。SessionStorageの中に途中経過のデータは保存していて、再読み込みした際に再現するのに利用しています。認証の仕組みもありません。

対応言語について

デフォルトが日本語で、英語にも対応しています。他の言語はウィザード用ファイルを追加すれば対応できます。

AIコードレビューについて

Googleのコードレビューガイドラインには含まれていないAIコードレビューの取り扱いについて、項目を追加しています。レビュアー側、レビュイー側それぞれについて、AIコードレビュー(CodeRabbitのような)をどう扱うかを規定できます。

FireShot Capture 226 - Reviewer Guidelines - Code Review Guideline Creator - [rgc.goofmint.dev].png

完成したデータについて

完成したデータはMarkdown、またはPDFでダウンロードできます。ただ、この内容は入力した内容がそのまま出ているだけなので、ちょっと読みづらい印象があります。

FireShot Capture 227 - Guidelines Created - Code Review Guideline Creator - [rgc.goofmint.dev].png

そこで、LLM向けのプロンプトも出力するようにしています。こちらの内容をコピーして、ChatGPTやClaudeなどに入力すると、いい感じの読みやすいコーディングガイドラインにしてくれるはずです。

image.png

まとめ

コードレビューガイドラインがあると、これからコードレビューをはじめる方のストレス緩和になったり、プルリクエストを提出する人の心構えもできるようになります。

チームの生産性向上、心理的安全性向上のために、ぜひご利用ください!

Code Review Guideline Creator

13
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?