推しアイデア
「どこかいきたいけど、どこに行こう?」を即座に解決。 グルメや自然、ホラーといった多様なテーマが、普段の道を物語に変えてくれる。自身の散歩を記録・共有すれば、他の誰かを通じて、まだ知らない街の魅力に出会える。
「どこかいきたいけど、どこに行こう?」を即座に解決。 グルメや自然、ホラーといった多様なテーマが、普段の道を物語に変えてくれる。自身の散歩を記録・共有すれば、他の誰かを通じて、まだ知らない街の魅力に出会える。
黄色いテーマカラーから着想を得たハチがコンセプトです。ハチが花を探して蜜を集めるのと同じように、ユーザーは街のスポットを巡って楽しい体験をあつめる。その記録が集まる様子を、蜂の巣がモチーフの「ハニカムマップ」で表現している。
高い精度のスポット探索を実現する検索ロジック。各テーマには、目的地の有無といった条件に合わせて複数の探索シナリオを用意していて、ただ評価の高いスポットを選ぶのではなく、スポットの候補が見つかりにくいエリアでは探索範囲を拡大するなどして、柔軟な探索で最適な散歩ルートを提案する。
ユーザーの現在地や目的地(有無は問わない)、テーマに合わせてAIが物語付きの散歩ルートを提案するアプリケーションでユーザーは提案されたルートを体験したり、実際に歩いた記録を投稿・共有したりできる。
ユーザーはグルメ、自然、ホラーなどのテーマを選択し、提案する散歩の方向性が決まる。
各テーマの中に、細かく散歩ルールを決めた複数のシナリオを用意している。例えばグルメというテーマを選んだ場合、カフェ巡りやベーカリー巡りなどの違うシナリオを提案する。
各シナリオには、立ち寄るスポットのカテゴリや順番のためにロジックを組んでいる。例えばカフェ巡りというシナリオ(目的地なし)では、「①書店/雑貨店 → ②メインのカフェ → ③公園/ベーカリー」という順で、物語性のあるようなスポットの組み合わせを探索する。
このロジックは目的地がある場合とない場合でも分けられていて、経由地の数やスポットの選択が変化しする。また、各ステップでは物件の評価が高いというところも考慮してスポットを選択するため、満足度の高いルートを生成する。
散歩を終えたユーザーは、完成した物語、実際に歩いた時間や距離、感想、立ち寄ったスポットなどを散歩の記録として投稿でき、これにより、個人の体験が形として保存できる。
投稿された散歩の記録は、ハニカムマップ上で他のユーザーに共有され、これにより他の人がどこでどのように散歩を楽しんだのかを地図上で発見できる。
他のユーザーはマップ上の記録をタップして、その散歩の詳しい内容を閲覧できます。これによって、気になった散歩を自分でも体験でき、ユーザー同士の新たな発見や交流のきっかけが生まれる。
Swift アプリケーションのUIを作成
Go言語ルート 提案に必要な複数の処理であるSupabaseからのスポット情報取得やGoogle Maps APIへの経路問い合わせなどを効率的に同時実行でき、処理の待ち時間を短縮化し、ユーザーを待たせない。
Python 事前に目的地となる地点の情報を取得してくるために Google Map APIを叩いてデータを取得するためのスクリプトをPythonで作成しています
Supabase 散歩ルート提案の基盤となるスポット(POI)情報を集約・管理する。PostGIS GIS関数を使用してGEOMETRY型を導入した本アプリの、正確な位置情報によるデータの絞り込みを実現
Firestore ルート計算とAIによる物語生成が終わると、完成した複数の提案をFirestoreに保存する。ユーザーが提案を選択すると、アプリはそのIDを使ってFirestoreからルートの詳細を高速に取得する。
Cloud Run, Artifact Registry, Terraform
Cloud RunへのデプロイにはArtifact Registryでコンテナイメージを管理しています。 CD(継続的デプロイメント)にはGitHub Actionsを導入しており、バックエンドのデプロイはプルリクエストをマージするだけで完了する仕組みです。 また、Cloud RunやFirestoreといったインフラリソースは、Terraformを用いてコードで管理・作成しています。
Directions API(高かった、、、)Places API (New) 、Gemini API