Skip to main content

local-preview

Test status Deploy Status Docs Go Reference PyPI

A local-first preview-deployment orchestrator: every commit of a registered git repository becomes a servable preview at its own subdomain (<sha>.<repo>.preview.localhost:8080), built once, deduplicated by content, and served from a single binary.

local-preview resolves each commit into a (frontend artifact, backend artifact) pair by content-addressing the relevant subtrees. Commits that don't touch the frontend (or backend) reuse the existing artifact — and the already-running backend process. Backend state follows git lineage: a new backend version forks its data from the nearest deployed ancestor, so previews feel continuous on a straight line of commits while divergent branches can never corrupt each other.

Install

uv tool install local-preview

This installs the binary to ~/.local/bin/preview. Make sure to have that on your PATH.

Run

preview serve

The server listens on :8080. Open http://localhost:8080/ for the dashboard.

Or with Docker Compose:

docker compose up -d

📖 Documentation

Full documentation lives at https://jmelahman.github.io/local-preview/:

  • Quickstart — register a repo, deploy a commit, open the preview.
  • Configuration — flags and env vars.
  • REST API — endpoints exposed by the running server.
  • CLIserve, repo, deploy, install-hook.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

local_preview-0.1.4-py3-none-manylinux_2_17_x86_64.whl (5.5 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

local_preview-0.1.4-py3-none-manylinux_2_17_aarch64.whl (5.1 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

local_preview-0.1.4-py3-none-macosx_11_0_arm64.whl (5.3 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

local_preview-0.1.4-py3-none-macosx_10_12_x86_64.whl (5.6 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

local_preview-0.1.4-py3-none-any.whl (5.5 MB view details)

Uploaded Python 3

File details

Details for the file local_preview-0.1.4-py3-none-manylinux_2_17_x86_64.whl.

File metadata

  • Download URL: local_preview-0.1.4-py3-none-manylinux_2_17_x86_64.whl
  • Upload date:
  • Size: 5.5 MB
  • Tags: Python 3, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for local_preview-0.1.4-py3-none-manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 d2c8d5320eaae3a4f32a63386aeeda907e35d7c00490995891f2918f4e674353
MD5 0c47cce6c51521209230042f8d742936
BLAKE2b-256 f4e54c04d5baccfc8a925d7fc9eb3e198e512c6193e506d5b24cefcda52c06c4

See more details on using hashes here.

File details

Details for the file local_preview-0.1.4-py3-none-manylinux_2_17_aarch64.whl.

File metadata

  • Download URL: local_preview-0.1.4-py3-none-manylinux_2_17_aarch64.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for local_preview-0.1.4-py3-none-manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 c213b79f3bd65c4f49ff433e4c50f7413eb37338f042c0cf8859522dfe86ec71
MD5 94958884e74a7120dda40da567ba9d0f
BLAKE2b-256 36f1f921fd0fe0f0ec6c8d7b37009101d32d7f600955cb18391b7ae0490486c3

See more details on using hashes here.

File details

Details for the file local_preview-0.1.4-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: local_preview-0.1.4-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for local_preview-0.1.4-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9b2ca84889e3400f7c7c848fb183deae045bedb7dafcc8af12adab2f5888c977
MD5 b8e3df9a270c5f573d104b0494f08e76
BLAKE2b-256 ed2dd458f6f0fc2fe6d538106858a33e568eb574f0074084d9f3d60adb681fc7

See more details on using hashes here.

File details

Details for the file local_preview-0.1.4-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: local_preview-0.1.4-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 5.6 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for local_preview-0.1.4-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0f7b5f413a609bdf22ed804661705d855b8099a30e26a7b44d9cc3b040b70bbb
MD5 6965ec7f8836f44f7287fa83893a4c37
BLAKE2b-256 21f0d7db09e5e68d039dd9c84a8f3b4dad0747d9e17f6b8ff5afd2e6256ce56e

See more details on using hashes here.

File details

Details for the file local_preview-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: local_preview-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 5.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for local_preview-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 6bbdb4c927aadacbf3bbdcce147ef93cafd708defa65a852477bf0d60d11cacf
MD5 6a554eceafd4fc01aea52c1b62b10f25
BLAKE2b-256 7695c0c597a7721412904c901f7af06e8c3f656eac1b2fc03a07732739f04ca5

See more details on using hashes here.

Release history Release notifications | RSS feed

0.23.0

5 files

0.22.0

5 files

0.21.0

5 files

0.20.0

5 files

0.19.0

5 files

0.18.2

5 files

0.18.1

5 files

0.18.0

5 files

0.17.1

5 files

0.17.0

5 files

0.16.0

5 files

0.15.0

5 files

0.14.3

5 files

0.14.2

5 files

0.14.1

5 files

0.14.0

5 files

0.13.2

5 files

0.13.1

5 files

0.13.0

5 files

0.12.0

5 files

0.11.1

5 files

0.11.0

5 files

0.10.2

5 files

0.10.1

5 files

0.10.0

5 files

0.9.0

5 files

0.8.2

5 files

0.8.1

5 files

0.8.0

5 files

0.7.0

5 files

0.6.0

5 files

0.5.0

5 files

0.4.0

5 files

0.3.0

5 files

0.2.2

5 files

0.2.0

5 files

0.1.8

5 files

0.1.7

5 files

This release

0.1.4 This release

5 files

0.1.3

5 files

0.1.2

5 files

0.1.1

5 files

0.1.0

5 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page