{"id":50527528,"url":"https://github.com/zetcco/serve-local","last_synced_at":"2026-06-03T09:03:56.803Z","repository":{"id":358610141,"uuid":"1238652594","full_name":"zetcco/serve-local","owner":"zetcco","description":"Lightweight zsh script to quickly expose local ports via custom local domains with HTTPS","archived":false,"fork":false,"pushed_at":"2026-05-18T06:01:36.000Z","size":2,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-18T08:11:38.307Z","etag":null,"topics":["bash","dns","https","local-development","local-https-servers","proxy","zsh"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zetcco.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-14T10:17:51.000Z","updated_at":"2026-05-18T06:03:02.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/zetcco/serve-local","commit_stats":null,"previous_names":["zetcco/serve-local"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/zetcco/serve-local","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zetcco%2Fserve-local","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zetcco%2Fserve-local/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zetcco%2Fserve-local/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zetcco%2Fserve-local/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zetcco","download_url":"https://codeload.github.com/zetcco/serve-local/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zetcco%2Fserve-local/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33856288,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-03T02:00:06.370Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","dns","https","local-development","local-https-servers","proxy","zsh"],"created_at":"2026-06-03T09:03:56.076Z","updated_at":"2026-06-03T09:03:56.787Z","avatar_url":"https://github.com/zetcco.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# serve-local\n\nA lightweight Zsh script to quickly expose local ports via custom local domains over HTTPS using Caddy. It handles local DNS routing and SSL certificate provisioning automatically, cleaning up entirely when you stop it.\n\n## How it Works\n\n1. It appends a temporary loopback mapping for your custom domain to `/etc/hosts`.\n2. It dynamically generates a temporary Caddyfile configured with internal TLS and a reverse proxy to your specified local port.\n3. It spins up Caddy using this configuration to serve secure HTTPS traffic locally.\n4. Upon script exit or interception of a termination signal (Ctrl+C), it automatically reverts the `/etc/hosts` changes and deletes the temporary configuration file.\n\nNote: If the script was stopped non-gracefully, you will have to manually edit out the changes made to `/etc/hosts`\n\n## Prerequisites\n\nEnsure you have `caddy` installed and available in your PATH.\n\n```bash\nbrew install caddy\n\n```\n\n## Usage\n\n```bash\nchmod +x serve-local\n./serve-local \u003cdomain\u003e \u003cport\u003e\n\n```\n\n### Example\n\n```bash\n./serve-local test.bijira.dev 8080\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzetcco%2Fserve-local","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzetcco%2Fserve-local","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzetcco%2Fserve-local/lists"}