{"_id":"@elydelva/localdomain","name":"@elydelva/localdomain","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@elydelva/localdomain","version":"1.0.0","description":"Local reverse proxy with domain, certificate and /etc/hosts management","type":"module","main":"dist/cli.js","bin":{"localdomain":"dist/cli.js"},"engines":{"node":">=18"},"keywords":["proxy","reverse-proxy","local","development","localhost","https","tls"],"license":"MIT","scripts":{"build":"tsc","test":"vitest","test:run":"vitest run","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"dependencies":{"commander":"^12.0.0","mkcert":"^2.0.0","ws":"^8.18.0"},"devDependencies":{"@types/node":"^22.0.0","@types/ws":"^8.18.1","@vitest/coverage-v8":"^2.0.0","typescript":"^5.0.0","vitest":"^2.0.0"},"types":"./dist/cli.d.ts","_id":"@elydelva/localdomain@1.0.0","_nodeVersion":"25.5.0","_npmVersion":"11.8.0","dist":{"integrity":"sha512-l1LaSknLVX1c+jQl4OF3Wvy7ubjVJVTwuApILl33p0iPTSwLvHZ+6nk93IpaZ3JWuLI/iCTawcsCeYYDy2/tnQ==","shasum":"1dbcf7ef08039323399df22fcf929ee649db68e4","tarball":"https://registry.npmjs.org/@elydelva/localdomain/-/localdomain-1.0.0.tgz","fileCount":60,"unpackedSize":47695,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCqlUgu7ZmQ891GeWppMpQOOxD7rMR0olxECug4Tyl3pgIgCJ353Sj0mHeY8nfot/QVxrGhOv5tCgPhnM6nDKfiskU="}]},"_npmUser":{"name":"elydelva","email":"ely.delva@outlook.com"},"directories":{},"maintainers":[{"name":"elydelva","email":"ely.delva@outlook.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/localdomain_1.0.0_1772304568895_0.2044851701476813"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-28T18:49:28.797Z","1.0.0":"2026-02-28T18:49:29.070Z","modified":"2026-02-28T18:49:29.291Z"},"maintainers":[{"name":"elydelva","email":"ely.delva@outlook.com"}],"description":"Local reverse proxy with domain, certificate and /etc/hosts management","keywords":["proxy","reverse-proxy","local","development","localhost","https","tls"],"license":"MIT","readme":"# localdomain\n\nLocal reverse proxy with domain management, TLS certificates, and automatic `/etc/hosts` editing.\n\n## Installation\n\n```bash\nnpm install -g localdomain\n# or\nnpx localdomain init\n```\n\n## Quick start\n\n```bash\n# Initialize config (interactive onboarding)\nlocaldomain init\n\n# Start the proxy (ports 80 and 443)\nlocaldomain start\n\n# HTTP-only mode (no TLS)\nlocaldomain start --http-only\n\n# Skip /etc/hosts modification\nlocaldomain start --no-hosts\n```\n\n## Commands\n\n| Command | Description |\n|--------|-------------|\n| `localdomain init` | Create config with quick onboarding (`-y` for defaults) |\n| `localdomain start` | Start proxy (80/443) |\n| `localdomain add <pattern> <target>` | Add a route (regex → URL) |\n| `localdomain remove <pattern>` | Remove a route |\n| `localdomain list` | List configured routes |\n\n## Configuration: `localdomain.config.json`\n\nSearched from the project root or parent directories.\n\n```json\n{\n  \"routes\": [\n    { \"pattern\": \"^app\\\\.local$\", \"target\": \"http://127.0.0.1:3000\" },\n    { \"pattern\": \"^api\\\\.local$\", \"target\": \"http://127.0.0.1:3002\" }\n  ],\n  \"defaultTarget\": \"http://127.0.0.1:3004\",\n  \"domains\": [\"app.local\", \"api.local\"],\n  \"certificates\": {\n    \"dir\": \"./certs\",\n    \"domains\": [\"*.local\", \"localhost\"],\n    \"autoGenerate\": true\n  }\n}\n```\n\n- `routes`: Regex patterns tested in order (first match wins)\n- `domains`: Domains added to `/etc/hosts`\n- `certificates.autoGenerate`: Generate certificates when missing\n\n## Cross-platform\n\n- **macOS**: Auto-generated certificates, HTTPS recommended.\n- **Linux / Windows**: A warning is shown. Certificates are not in the system trust store. Use `--http-only` or manually accept the certificate in your browser.\n\n## /etc/hosts\n\nOn startup, a dedicated section is added. It is removed automatically on exit (Ctrl+C). On Unix, root may be required: `sudo localdomain start`.\n","readmeFilename":"README.md","_rev":"1-57b39d6f3e9cbedae10f61e176896966"}