Placemark アプリケーションの紹介
- Placemark は、地理空間データのインポート、作成、エクスポート、可視化、公開ができるウェブアプリケーション。
- さまざまな地理空間データ形式、アルゴリズムベースの編集作業(例: バッファリング)、および描画ベースの作業をサポート。
- このツールを使用する YouTube 動画が多数あり、アーカイブされたウェブサイトには過去のマーケティング資料がある。
初回オープンソースリリースに関する注意事項
- このコードベースは初回のオープンソースリリースであり、設定に関する支援は可能だが、エンドツーエンドの統合サポートは提供できない。
- 複雑なウェブアプリケーションであり、作成された環境では動作するが、すべての環境で動作するわけではない(例: Windows ではほぼ確実に動作しない)。
- 他の環境での設定を容易にすること、機能をオプション化すること、その他の改善や修正に関する PR を歓迎する。
技術スタック
- アプリケーションの技術スタックに関するメモは
docs/architecture.md で確認できる。
Docker を使った実行
- Docker ファイルの例があり、詳細は
docs/docker で確認できる。
Render での実行
render.yaml ファイルによって構成されており、Render でホスティングするのが最も手早い実行方法かもしれない。
- Railway、Heroku、Flightcontrol のような類似のホスティング構成でも動作する可能性がある。
インストール
- プロジェクトは yarn を使って構築されており、最後にテストされた yarn のバージョンは
1.22.19。
- npm や他のパッケージマネージャーでインストールする場合、異なる依存関係が発生する可能性がある。
環境変数
- 開発時には
.env ファイルを読み込み、本番環境では環境変数が必要。
- 起動時に環境変数を確認するため、不足している変数があるとアプリケーションがクラッシュする可能性がある。
- 必要な環境変数の一覧は
app/lib/env_server.ts と app/lib/env_client.ts で確認できる。
必須および任意の環境変数
- 必須: GitHub、Replicache
- 任意: Posthog、Cloudflare、Postmark、WorkOS、Stripe、CampaignMonitor、Logtail
- セルフホスティング環境では Stripe のような一部サービスが不要な場合があり、それらをオプション化することも可能。
インフラ
- Placemark は、アプリケーション(このリポジトリ)と Postgres 14(またはそれ以上)のデータベースという 2 台のサーバーに依存する。
ドメイン
- ウェブ上では Placemark は 3 つのドメイン配下で提供される:
app.placemark.io、api.placemark.io、API
- API はアプリと同じウェブサーバー上で提供され、Cloudflare Worker を使って
api.placemark.io から app.placemark.io へリクエストをプロキシする。
ローカル SSL テスト
- SSL 上でのみ動作する機能をテストする必要がある場合に必要(例: iPhone での位置情報テスト)。
- Tailscale の
tailscale cert を使用し、証明書をこのディレクトリに移動した後、caddy start を実行する。
Stripe の利用
- Stripe はこのプロジェクトの任意の依存関係になりつつある。
- Webhook プロキシは
./_scripts/webhook-proxy.js にあり、必要に応じて実行できる。
GN⁺ の見解
- Placemark は、地理空間データを扱うために必要な多様な機能を提供する強力なウェブアプリケーションで、GIS の専門家や開発者に有用。
- オープンソースとして提供されることでコミュニティからの貢献を受けられ、さまざまな環境で利用するための改善が期待できる。
- Docker のようなコンテナ化ツールを使って簡単にデプロイ・実行でき、クラウドホスティングサービスを通じて迅速に展開できる利点がある。
1件のコメント
Hacker Newsの意見