@kranehq/yard
v0.0.6
Published
CLI for routing local dev servers to stable *.localhost hostnames
Maintainers
Readme
Yard
Yard gives each local app a stable *.localhost hostname so you can run
multiple projects without port juggling.
Packages
@kranehq/yard: CLI that starts your command withYARD_*env vars and proxies traffic from<name>.localhost:<publicPort>.@kranehq/yard-vite: Vite plugin that reads Yard env vars and configures the dev server for Yard.
Install
bun add -g @kranehq/yardQuick Start
- Configure your dev server to use
YARD_PORTandYARD_HOST. - Start it through Yard:
yard -n myapp -- bun run dev- Open:
http://myapp.localhost:3000CLI
$ yard --help
Yard routes local dev servers to stable *.localhost hostnames.
Usage:
yard [options] -- <command> [args...]
Options:
-n, --name <name> Project hostname prefix (required unless in config)
-p, --port <port> Public proxy port (default: 3000)
-c, --config <path> Config module path (default: ./yard.config.ts)
-h, --help Show help
Examples:
yard -n myapp -- bun run dev
yard -n api -p 4000 -- bun run dev
yard -c ./yard.config.ts -- bun run devEnvironment Variables Passed To Your Command
YARD_HOST:<name>.localhostYARD_PORT: allocated internal port for your dev server to bind toYARD_PUBLIC_PORT: external proxy port
Config File
By default, Yard reads yard.config.ts as an ESM module.
export default {
name: "myapp",
port: 3000,
};Flags override file values.
Vite Plugin
Install:
bun add -d @kranehq/yard-viteConfigure:
import { defineConfig } from "vite";
import { yard } from "@kranehq/yard-vite";
export default defineConfig({
plugins: [yard()],
});Run through Yard:
yard -n myapp -- bun run dev