34
// 概要
Portless は、動的なローカルポート番号を安定した名前付きの .localhost URL に置き換えることで、開発ワークフローを簡素化します。HTTPS 証明書の管理を自動化し、さまざまなフレームワークのプロキシ処理を担うほか、monorepo 統合や Tailscale 共有といった高度な機能もサポートします。このツールはポートの自動割り当てと開発環境への必要な設定注入を行うことで、シームレスな体験を実現します。
// 技術解説
Portless は、ローカル開発環境において一時的なポート番号を安定した人間が読み取り可能な .localhost URL に置き換えるための開発者ツールです。ローカルプロキシとして機能することで、HTTPS/TLS 証明書の管理、ポートの割り当てを自動化し、monorepo や git worktrees のような複雑な構成をサポートします。このアプローチにより、複数の開発サーバーのポート管理やブラウザベースの CORS、認証の問題による摩擦を解消し、環境変数の自動注入を通じて既存のフレームワークとのシームレスな統合を実現します。
// 主要ハイライト
01
ランダムなローカルポートに依存せず、https://myapp.localhost のような安定した名前付き HTTPS URL を提供します。
02
ローカル CA を自動生成および信頼することで、ブラウザの警告なしにシームレスな HTTPS/HTTP/2 開発を可能にします。
03
monorepo アーキテクチャをサポートし、ワークスペースパッケージを自動検出して一意のサブドメインを割り当てます。
04
Git worktrees と統合し、URL の先頭にブランチ名を追加することで、同じプロジェクトの複数バージョンを同時に実行できます。
05
mDNS を介した LAN モードを提供し、同じネットワーク上の他のデバイスからローカル開発サーバーへアクセス可能にします。
06
Tailscale を介してチームメイトとローカル開発サーバーを簡単に共有したり、Tailscale Funnel を通じて公開したりできます。
// ユースケース
01
動的な localhost ポートを https://myapp.localhost のような安定した人間が読みやすい URL に置き換えます。
02
HTTP/2 サポートとローカル CA 信頼を備えた自動 HTTPS を有効にし、安全な開発を実現します。
03
Tailscale ネットワーク経由でローカル開発サーバーを安全に共有するか、Tailscale Funnel を介して公開します。
// クイックスタート
npm install -g portless を使用してパッケージをグローバルにインストールします。インストール後、コマンドの先頭に portless を付けて、portless run next dev のように開発サーバーを実行できます。このツールは、アプリケーションのプロキシ設定、ポート割り当て、URL 生成を自動的に処理します。