明大祭とは
明治大学で、毎年10月末~11月頭くらいの時期で開催してる、大学祭のこと。
私はその実行委員会で、Web部門という部署に所属し、公式サイトやツールを作っています。
第141回明大祭実行委員会組織図(今回関わる部署だけ抜粋)
Web部門が作っているもの
- 公式サイト
- 参加団体ツール
- 投票フォーム
今回は参加団体ツールについて書いていこうと思います。
参加団体ツールとは
明大祭実行委員会と明大祭に参加する団体との資料のやり取りを便利にするものです。
例えば団体が応募したり、企画書を提出したりして、それを見ることがきるようになっています。

Next.jsを使って作られたWebサービスになります。
公式サイトに反映させるのが面倒だった
公式サイトには、参加団体の企画を載せるページがあります。
https://meidaisai.jp/search (期間によって閲覧できない可能性あり)

これを団体からGoogleフォームで提出してもらっていたのですが、これまで提出してもらった企画書との整合性や、文字数などいろいろな制限があり、これをチェックするのがとても大変でした。
また、データを修正することが多くあり、直前期の繁忙期にわざわざデータを修正する手間はかなりめんどくさかったです。
これまでのデータ修正フロー
一度ならまだしも、これがとても忙しい時期に何回も発生します。
サイト上のデータも、エクセルデータをjsonに直して管理していたので、200を超え企画数を管理するのはとても大変だし、読み込みもかなり時間がかかってしまっていました。
この問題を、参加団体ツールを使って改善しました。
解決策
参加団体ツールでサイトに載せる情報を集める
これによって、文字数超過や、使用不可文字を含まないように強制することができ、データチェックの手間を大きく減らすことができます。
また、Googleフォームで集めるとデータはGoogleスプレッドシートに格納されますが、参加団体ツールで集めると、Supabaseに集めることができます。これによって公式サイトからデータを直接読み込むことができます。そして、Supabase上のデータを書き換えてしまえば、Web部門は何もしなくても公式サイト上のデータが一緒に書き変わってくれます。
(GASを使う手もありますが、いろんな要因から却下することになりました。)
参団ツールを使ったデータ修正フロー
めちゃ短くなって楽になりました。
団体ごとに資料を管理するのが大変だった。
参加団体局は企画書などの資料を団体に提出してもらい、企画を実施できるかどうかを確認しています。
資料は今までメールで送信してもらっていました。
再提出された資料は、何が変更されたのか確認するために前回提出されたファイルを膨大なメール履歴から見つけ出す必要がありました。
解決策
メールではなく参加団体ツールで提出してもらうことで、団体ごとに提出されたファイルを見ることができるようになっています。

参加団体にとってもメリットのあるものに
まず、大量の提出物の管理を楽にすることができます。
大量に提出物があり、それぞれ締め切りが異なっているため、何をいつ出せばいいのか分かりづらくなっていました。
また、それぞれの資料のテンプレートはメールで送られてくるため、それを探し出すだけでも大変でした。
解決策
このように提出する必要がある資料のテンプレートを締め切りと一緒に掲載し、提出忘れを防いでいます。

来年に向けて
団体が資料を提出したときに通知が届かないため、定期的にチェックする必要があったので、資料が提出されたら通知(メール)が送られるようにしたい。
新しいツールを作ってみて
参加団体局のことをほとんど知らない状態から制作を始めたので、とにかくたくさんの資料を読み込んだり、いろんな人と話し合いを重ねました。
関係者全てにメリットがあるツールを作りたかったので、いろんな視点から考え、意見をもらっては改善してを繰り返してきました。
ただプログラミングをして物を作るだけでなく、いろんな人と関わって作る必要があるので技術力だけでなく、実行力やコミュニケーション力など、いろんな力が鍛えられて楽しかったです!