Devtree 0.2.0: Routing providers, canonical hostnames, and dev server runner selection
·
0 commits
to 24b50bda20e9dd860e58e4740951c4d4b6cafa32
since this release
Devtree 0.2.0 introduces a pluggable routing provider system with Caddy support, canonical hostname support for remote access over Tailscale, configurable dev server runner selection, and new example projects.
Routing providers
- Added a pluggable routing layer that supports both Portless and Caddy as proxy providers, configurable via the new
routingsection indevtree.config.ts. - Added Caddy process management with automatic route registration on
devand cleanup on exit. - The
doctorcommand now checks the configured routing provider and bootstraps it with--fix. - The
infocommand now reports the active routing provider and whether routing is enabled.
Canonical hostname and Tailscale proxy mode
- Added
portless.hostname(androuting.hostname) config to assign a canonical hostname per checkout instead of the default.localhostURL. - Added a
portless-proxyTailscale mode that exposes the dev server through Portless on a canonical hostname for remote access over a tailnet. - Added the
devtree hostscommand to print the hosts-file entries needed for this checkout. doctornow verifies that the canonical hostname resolves and guides users to add local hosts entries via the newhostscommand.- The runtime environment now exports
PORTLESS_PORTandPORTLESS_HTTPSso downstream tooling stays in sync with the active routing configuration.
Dev server runner selection
- Added
dev_server.runnerconfig (vite-plusorvite, defaultvite-plus) to choose which Vite dev server binary Devtree launches. - VitePlus is now an optional peer dependency instead of a required dependency.
doctornow checks that the selected runner is available on PATH.
Examples
- Added
examples/simple-portless— a minimal Vite application using Portless with.localhostURLs. - Added
examples/caddy-hosts— a complete Caddy, Tailscale, hosts-file, PostgreSQL, and Redis setup with full setup guide.
Infrastructure
- Added Dependabot configuration for automated dependency updates; bumped the transitive
yamldependency from 2.8.2 to 2.8.3. - Added a GitHub Actions workflow for npm release publishing using npm trusted publishing.