Sonata

Portless — стабильные .localhost адреса вместо номеров портов

Portless — инструмент для локальной разработки, который заменяет номера портов на стабильные именованные .localhost адреса. Подходит как для разработчиков, так и для автоматизированных агентов. Проект находится на стадии pre-1.0, поэтому при установке в разных проектах могут использоваться разные версии, а формат директории состояния может меняться между релизами.

По умолчанию включён HTTPS с HTTP/2: при первом запуске portless создаёт локальный CA, добавляет его в доверенные и занимает порт 443 (с автоматическим повышением прав через sudo на macOS/Linux). Прокси запускается автоматически при старте приложения, а случайный порт из диапазона 4000-4999 передаётся через переменную окружения. Большинство фреймворков (Next.js, Express, Nuxt) учитывают её сами, а для Vite, Astro, Angular и других portless автоматически подставляет нужные флаги.

Настройки (порт, TLS, TLD) переиспользуются из последнего запуска прокси, поэтому перезапуск или перезагрузка не сбрасывают конфигурацию к значениям по умолчанию — явные переменные окружения всегда имеют приоритет. В неинтерактивных средах (без TTY или CI) portless завершает работу с понятной ошибкой вместо ожидания ввода, что удобно для раннеров вроде turborepo. Поддерживаются монорепозитории: один файл конфигурации на корне покрывает все пакеты воркспейса.

GitHub ★ 11,512

Загрузка страницы