Expose local app online with a free public URL
A straightforward guide to expose localhost online, share it, test webhooks, and generate a temporary public URL using GhostlyShare.

Contents
When a local app requires a public URL
A local app typically runs solely on your own device. This is fine during development, but occasionally someone else, another device, or an external service needs to access it via the internet.
- A colleague needs to review a feature prior to deployment.
- A client wishes to navigate a prototype live during a call.
- A webhook provider requires a public callback URL.
- A phone, tablet, or test device is not connected to the same network.
In such cases, full deployment is often excessive. A temporary localhost public URL suffices.
What you need before you begin
Verify the local app is working before creating the public URL.
- A web app, API, dashboard, or webhook receiver operating locally.
- The local URL or port, such as http://localhost:5173, http://localhost:3000, or http://localhost:5080.
- GhostlyShare installed via the Microsoft Store.
- A browser tab to verify the public URL once it has been generated.
If the local URL doesn’t work on your device, resolve that first. The public URL only forwards traffic to an active app.
How the public preview functions
GhostlyShare monitors local ports and displays shareable web services. Select the appropriate service and start a public preview.
- Your app remains on localhost.
- GhostlyShare generates a temporary public URL.
- Requests to the public URL are forwarded to your local app.
- Stop the preview once the session ends.
Consider it a temporary preview link, not a substitute for production hosting.
Step-by-step: expose a local app online
Follow these steps when your app is already running locally.
- Launch your local app and open it in your browser.
- Launch GhostlyShare from the Windows system tray.
- Locate the matching app entry by port, title, or local URL.
- Click Start and wait until the status shows Live.
- Copy the public URL and open it in a browser to test.
- Share the URL with the individual, device, or webhook service requiring access.
- Click Stop when the preview is no longer required.
That completes the cycle: local app, public URL, quick test, stop.
Using the public URL for webhooks
Webhook providers cannot access localhost on your device but can reach the public preview URL.
- Start your local webhook receiver.
- Generate the public URL using GhostlyShare.
- Insert the public URL into the webhook callback field.
- Send a test event and examine the request locally.
This is helpful when you need genuine webhook traffic without deploying the receiver beforehand.
Ideal scenarios for a temporary public URL
This workflow suits short sessions where the app remains local.
- Share a working preview with a colleague before deploying a branch.
- Allow a client to access a local prototype during a call.
- Test webhooks from payment, repository, automation, or commerce platforms.
- Access the same app on a phone or tablet without connecting to the same network.
- Share a local API for a brief integration discussion.
When to use this instead of deploying
A public preview URL is temporary and directs to the app running on your machine. It’s ideal as an ngrok alternative for quick sharing without signup, not for full hosting.
- Use it for demos, feedback, webhook testing, and mobile device checks.
- Use a full deployment for production traffic or extended access.
- Use standard hosting when the app requires a stable release, consistent URL, and monitoring.
In brief: preview links enable quick sharing; deployments ensure permanent access.
Limitations and safety considerations
A public URL allows your local app to be accessed externally. Only share links to content you intend to be public.
- Avoid exposing admin pages, private dashboards, database tools, or insecure development endpoints.
- Stop the preview once testing is complete.
- The URL is intended for previews, demos, webhook testing, and debugging, not for permanent production hosting.
- If the local app stops, crashes, or your computer sleeps, the public preview will cease.
Frequently asked questions
The brief version
To expose a local app online, start it locally, open GhostlyShare, click Start on the detected service, copy the public URL, and stop the preview when finished.
Use GhostlyShare for quick public preview links without deployment, account setup, or port forwarding.
Download GhostlyShare