筑波大学のシラバス閲覧アプリをつくった
目次
はじめに
夏なのにサマーインターン受けなかった @ITF_hikary です。 さて、今回はシラバスっぽいなにかを作ってみました。以下からログインなしで遊べます。
↓↓
はじめに使い方について説明したあとに、 今回の開発に至った経緯と、どのように開発を行ったのかについてお話できればと思っています。
どういったアプリ?
このアプリは筑波大学で履修できる授業を検索し閲覧できるようにするアプリです。 追加機能として、授業に対して★星レビューができるようになっています。(Googleログイン)
ログインして授業評価できるようになりました!アルファ版として公開してるのでどうぞ https://t.co/Kh3yPd37q8 pic.twitter.com/JIdu8KxLI7
— hikae (@ITF_hikary) 2021年8月20日
開発に至った経緯
授業情報であるシラバスはkdbを通して閲覧することができます。しかしこのkdbは処理が重く、変わりのアプリとして「kdbっぽいなにか」っていうプロダクトをみんな使っている現状です。
このアプリではシラバスについてはとくに何もしてないのですが、シラバス自体もかなり不便です。 多くの人がいまだに紙の履修要覧を利用しているのではないでしょうか?
具体的には東京大学の履修検索システムでは、マイリスト機能(kdbっぽいなにかにある)などwebならではの機能がついており、履修仮組に便利です。
こちらは有志によるものですが、立教大学ではレビュー機能、オススメ授業レコメンド、チャットなどSNSを利用した履修をさらに強化する機能がついており、とても便利です。
シラバスページをおしゃれにして、シンプルなレビュー機能をつけてみたら便利になるのではと思いアプリを作成してみました。
開発過程
今回のアプリは3日(2日目にリリース)で実装しました。
1日目の段階でシラバスが表示できるようになり、 2日目には検索機能とレビュー機能を追加してリリース。 3日目はアルゴリズムの修正による高速化のみを行っています。
今回のアプリはフレームワークとしてNext.js(React)を採用しており、Vercelにてホスティング、Firebaseをデータベース、認証に使っています。
Next.jsについて
Next.jsを採用した背景としては、SSRによるAPI機能によりバックエンドを統合した開発を行おうと思ったからです。ホスティングにVercelを利用しているのもそのためです。
テンプレートとして、先日作成したRSSリーダーのプロジェクトを用いて開発を行いました。
Vueとの比較
vite(vue3)と比較すると、Firebaseをクライアントで操作する場合はvueのほうが使いやすかったしホスティングもFirebaseにまとめやすかった印象でした。
@vueuse/firebase
で一貫した開発ができたのはとても良かったです。
さいごに
レビュー機能は荒れる心配があるので、ちょっとだけためらいがある印象です。 ユーザーの声を参考に便利な機能を増やしていくのがいいと考え、機能を最小限に抑えたリリースを行いました。(MVP) この記事を最後まで見ていただいた方にはぜひアプリを触っていただけたらいいなと思います!