For apps running on localhost

Show your next change before you ship it.

Give a tester a link to the app on your machine. They use it, you change it, they see it. Same link, no deploy.

How it works

Your machine, their browser, one link.

Your machine

trailhead — npm run dev
$ npm run dev
  VITE v7.1.4  ready in 312 ms
  ➜  Local:   http://localhost:3000/
2:45 PM [vite] hmr update /src/Hero.jsx
trailhead — purlview
$ purlview share 3000
 Sharing localhost:3000
https://k7m2p4qx.purlview.link/?token=Zk3vQ9x7Lm2Np5RtYw8AbC
Access   Anyone with this link
Expires  in 1h · 3:42 PM
2:44 PM   First visitor opened the app

The tester's browser

k7m2p4qx.purlview.live

TrailheadSaved · 2

Plan a hike

Trails near you this weekend

  • Ridge loop6.2 km
  • Lake path3.8 km
  1. You share a port
  2. Your tester opens the link
  3. You change code, they see it

You save a change and your dev server reloads it. Their page goes from sunrise to night, through the same link, with nothing deployed.

Get started

Install. Share. Collaborate.

Install once, share any app on your machine, and keep changing it while your tester uses it.

  1. Install

    macOS, Linux, WSL

    curl -fsSL https://purlview.com/install.sh | sh

    Windows PowerShell

    irm https://purlview.com/install.ps1 | iex

    Also Homebrew, Linux packages, WinGet and Scoop.All install options

  2. Share

    purlview share 3000

    Your app's own port: 3000, 5173, 8000

    Start your app first. The first share signs you in with a code from your email, then prints the link to send your tester.

Why Purlview

Access

Two ways in.

Share with a whole call, or with exactly the people you name.

Anyone with the link

The link carries its own secret. Whoever opens it goes straight to your app.

$ purlview share 3000
Access   Anyone with this link

Only the people you name

Each address gets an invite by email. Anyone else who opens the link is asked for an email and gets nothing.

$ purlview share 3000 --to ana@example.com
 Invite sent to ana@example.com

The tester's side

What your tester sees.

Mostly, your app. Purlview shows a page of its own only when there is something to say, in one line with one button.

Front end and API

Several apps, one link.

Name every port. The link opens the first; your front end reaches the API as it does on your machine, because Purlview translates your apps' own addresses for the tester.

Apps with an API on another port

$ purlview share 5173 8000
 Sharing localhost:5173
  + localhost:8000

https://k7m2p4qx.purlview.link/?token=Zk3vQ9x7Lm2Np5RtYw8AbC

Share your running app. Improve it together.