このサイトについて
Portico は主要ホテルグループのラグジュアリー・プレミアムブランドを整理し、どのブランドがどのグループに属し、世界のどこに展開しているかを示します。
収録範囲について: ホテル情報は OpenStreetMap とキュレーションデータに由来します。表示件数は Portico が現在収録している数であり、ブランドの全ホテルとは限りません。
開発動機
私は旅行が好きで、旅の計画を立てるたびに、いつか泊まってみたい憧れのホテルに思いを馳せてきました。ただ、世界のホテルブランドがどのグループに属し、どこに展開しているのかをまとめて気軽に眺められる場所は意外と見つかりません。憧れのホテルをもっと詳しく知りたい——そんな思いから、世界のホテルブランドを検索・比較・俯瞰できるサービスとして Portico を作りました。
データ出典
- OpenStreetMap のコントリビューター — ホテルの位置と属性。ODbL 1.0 のもとで提供。
- Natural Earth — 国境データ (パブリックドメイン)。
- ブランドとグループの階層 — 各ブランドの公開情報をもとに Portico が整備。
ライセンス
Portico のデータベースは OpenStreetMap のデータを含むため、データベースおよび公開 API が返す内容は Open Database License (ODbL) 1.0 のもとで提供されます。利用する場合は OpenStreetMap のコントリビューターを出典として明記し、派生データベースを同じライセンスで公開する必要があります。 Open Database License (ODbL) 1.0
商標について
Portico は独立した情報サイトです。ブランド名は各社の商標であり、Portico はいかなるホテルグループ・ブランドとも提携・公認関係にありません。
API の利用条件
API は無料・認証不要で提供していますが、いかなる保証もありません。予告なく変更または停止する場合があります。リクエスト量は常識的な範囲にとどめ、可能な範囲でレスポンスをキャッシュしてください。
技術スタック
| レイヤ | 技術 | 備考 |
|---|---|---|
| ランタイム | Bun | 開発・ビルド・データ処理スクリプトの実行に使用。 |
| フロントエンド | Hono JSX (SSR) + React 19 + Vite 7 | ページはサーバー側で生成。React は検索・地図画面でのみ使用している。 |
| スタイル | Tailwind CSS v4 | モノクロ基調の最小限のトークン。チャートと共通。 |
| 地図 | MapLibre GL JS | ベクトルタイルは OpenFreeMap。クラスタリングと地図範囲検索に対応。 |
| バックエンド | Hono on Cloudflare Workers | 1 つの Worker が公開 API とページ生成の両方を担う。 |
| データベース | Cloudflare D1 (SQLite) | 読み取り専用。実行時に書き込まず、バッチで作り直す。 |
| データパイプライン | Bun scripts + OpenStreetMap / Nominatim / Natural Earth | キュレーションしたブランド情報と OpenStreetMap を統合し、検証してから反映。 |
| 品質 | Vitest / Biome / tsc / GitHub Actions | main への push ごとに Lint・型チェック・テストを実行。 |
| ホスティング | Cloudflare Workers + Custom Domain | 独自ドメインでエッジから配信。 |