funbus v2 を公開しました

2024-09-28 03:00 公開
2025-05-26 05:12 更新

本日、funbus v2を公開しました。

変更点:

  • Vivaldiのサイドバーで開いた時にいい感じにしたい
  • PWAに対応したい
  • 現在地を自動で取得したい

この3つを実装したかったので、作り直すことにしました。

主な機能

  1. 平日、土日の「未来大 - 亀田支所前」の時刻表を表示します。
  2. 選択したバスまでのカウントダウンを表示します。
  3. 系統、行き先を表示します。
  4. 開いている区間のバスロケ(リアルタイムにバスの位置が分かるWebサイト)に移動できます。
  5. 次に出発するバスがデフォルトで選択されます、さらにその次の「次発」のバスも分かります。

技術スタック

  • Next.js App Router / React
  • Tailwindcss
  • zustand (状態管理ライブラリ)
  • eslint / prettier
  • Vercel

特徴、新機能

  1. キーボード操作に対応しました。

  2. スペースキーを押すだけでバスロケに移動できます。

  3. 数字(1,2,3,4)キーを押して時刻表を切り替えます。

  4. 上下矢印キーを押してバスを移動できます。

  5. 左右矢印キーを押して時刻表を切り替えます。

  6. PWAに対応しました、スマホアプリとして追加できます。ブラウザの「ホーム画面に追加」からアプリとして動作します。

  7. PWAとしてインストールした場合、キャッシュされたデータを使って表示します。つまりモバイルデータ通信をほぼ使いません。(現在地の取得を除く)

  8. インターネットに繋がる場所であれば、接続しているインターネットから未来大にいるかどうかを自動で取得します。

  9. 平日/土日を自動で取得します。つまり、開くだけで最適なバスが選択されます。

  10. Vivaldiのサイドバーに合わせて調整しました。

  11. 出発済みのバスは、到着までのカウントダウンに切り替わります。

自分が使いたかっただけですが、かなり便利にできたと思っているので、ぜひご活用いただければ幸いです。

ご覧いただきありがとうございました。

追記:2025/05/26

未来大のバス利用を便利にするアプリ「funbus」v2.1 をリリースしました! 設定画面から使える機能が増えました!!

✨ 新機能

  • 亀田支所前〜未来大間のバス停に対応
  • 次のバスへの自動更新に対応 (デフォルト: OFF)
  • もうすぐ到着するバスの警告表示の切り替えに対応 (デフォルト: ON)
  • 現在のネットワークを上部に表示 (fun-wifiを検知した場合、自動的に未来大モードに切り替わり、上部に fun-wifi と表示されます。fun-wifiに接続されていない場合は、未来大に向かうモードに切り替わります。)

🛠️ バグ修正

  • 表示がずれている項目を修正
  • 不安定なアニメーションを削除
  • 計算ロジックを簡略化し、パフォーマンスを向上

🥳 内部的な話

  • 大リファクタリングを敢行しました!
  • バスデータの持ち方を全て書き直し、型チェックが正しく動くようにした
  • 文字列を魔法のようにフュージョンしていた部分を、ロジックごとに分離した
  • 不要な文字列操作をなるべく減らした
  • UIとロジックを正しく分離した
uiro

uiro

famisics

ご覧いただきありがとうございました!