What I am building
Tour-Railは、旅行ルート作成と移動の可視化を組み合わせたWebアプリです。地図クリックでスタート・ゴール・寄り道を置き、車・徒歩・自転車を切り替えると、FastAPIバックエンド経由でOSRMからルート・距離・所要時間を取得し、移動手段のアイコンがルート上をアニメーションします。
Why I started
移動計画を単なるリストではなく、地図と演出で楽しく確認できる形にしたいと考えました。あわせて、フロントエンドとバックエンドの分離構成をひとつの作品として示すことも目的です。
My decisions
- フロントからOSRMを直接叩かず、FastAPIを1段挟んでレスポンスを正規化する。CORSやレート制限の境界をサーバー側に閉じ込め、エンジン差し替えも後から足せる形にする
- Static Site(フロント)と Web Service(API)を分離してデプロイし、接続先はビルド時に環境変数で注入する
- バック/フロント双方にテストを書き、手動確認手順まで文書化する
Tech
React 19 / Vite / TypeScript / Leaflet / FastAPI / Python / OSRM / Vitest / unittest