Skip to content

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

輪 (Rin) MVP

目的地を入れたら「停め方」まで決まる駐車場ナビの静的PWAです。まずは社長と弟さんの2人ドッグフード用の読み取り専用プロトタイプです。GitHub Pages上は公開URLですが、noindex/robots.txt とUI内表記で関係者限定・サンプル料金であることを明示しています。

  • 公開URL: https://markun-japan.github.io/rin/
  • 対象エリア: 茨木市中心部 / 大阪・梅田
  • 地図: MapLibre GL JS + 国土地理院タイル
  • 住所検索: 国土地理院 AddressSearch
  • バックエンド: なし(GitHub Pages配信)

MVP機能

  1. 目的地/住所入力で周辺駐車場候補を地図とリスト表示
  2. 駐車場から目的地までの徒歩時間を近似計算(直線距離 × 1.3 ÷ 80m/分)
  3. サンプル料金表示
  4. 滞在時間から料金を計算し、「最寄り比 +◯分 / −◯円」で比較。既定は徒歩が近い順、切替で安い順
  5. 車高入力で制限超過の駐車場を除外。不明は通常表示
  6. 既知ランドマーク(梅田/大阪駅/茨木市役所/阪急茨木市駅)は代表点を優先
  7. 到着時刻(任意)で夜間最大料金を反映
  8. 徒歩上限(5/10/15分)で遠すぎる候補を絞り込み
  9. 満車時Plan B(第1〜第3候補)を常時表示し、第1候補が満車でも次候補へ即切替
  10. 2人ドッグフード用のワンタップ自己観測(空/混/満/到着/退出)を端末ローカルに保存
  11. データ供給層を 自前静的マスタ / live vacancy provider / 自己観測 に分離。NAVITIME等のAPI由来満空は将来も表示用メモリだけで扱い、永続保存しない前提

データ出所と規約安全設計

  • data/parkings.json: 自前静的マスタ。料金はサンプル/目視入力想定で、API由来データではありません。
  • live vacancy provider: app.jscreateLiveVacancyProvider() が境界です。現在は未接続です。NAVITIME等のAPIキー到着後も、レスポンスはメモリ上の一時snapshotとしてだけ扱い、localStorage/Cache Storage/JSONファイルへ保存しない設計です。
  • 自己観測: localStoragerin.selfObservations.v1 に、この端末で押した「空/混/満/到着/退出」だけを保存します。API由来満空とは混ぜず、UI上も「自己観測」と明示します。
  • Service Worker: /api//live-vacancysource=livevacancy=live を含むリクエストはキャッシュしません。

今回の次期実装範囲

  • 満車時Plan Bパネル(第1〜第3候補、次候補切替)
  • ワンタップ自己観測と短い鮮度表示(30分以内を有効扱い)
  • 自己観測が「満」「混」の候補を並び替えで下げる満車耐性
  • live vacancy provider境界とキャッシュ禁止のService Workerガード

見送ったもの: NAVITIME/P-Collection実API接続、外部契約、サーバ/APIプロキシ、一般ユーザー投稿、ストア申請、GitHub Pages反映。

料金について

data/parkings.json の料金は比較ロジック検証用のサンプル料金です。現地表示・公式情報を必ず優先してください。

ローカル確認

python -m http.server 4173

http://127.0.0.1:4173/ を開いてください。

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages