Skip to main content

vaalboks

vaalboks logo

Vaalboks is a small file-sharing server for a local network. Drop files or folders in the browser, then download them from another device on the same network. It also supports sharing text snippets ("clipboard") between connected devices.

The name is Afrikaans for a “dull box” — nothing fancy, just a basic tool for moving files between devices without an external hosted service.

Run

To use vaalboks, install uv and run:

uvx vaalboks

By default, vaalboks:

  • Starts an HTTPS server on 0.0.0.0:8443 with two workers.
  • Persists the SQLite database and shared files in ~/.vaalboks (or ./vaalboks-data when run from a checkout).
  • Generates a local self-signed certificate on first launch.
  • Prints the local-network URL and a QR code for that URL in the terminal.
  • Uses a room phrase to isolate shared files between devices.
  • Keeps room sessions valid for 12 hours.

Use --http only on a trusted network: room phrases, session cookies, uploads, and downloads are then sent without transport encryption. Use --no-persist for an ephemeral single-worker session; its database and shared files are lost when the process exits.

vaalboks application preview

For the easiest phone workflow, connect the phone and computer to the same Wi-Fi, scan the startup QR code, and open the displayed URL. Choose a room phrase when prompted, then use the same phrase on each device that should share files. The phrase creates an isolated room, but a phrase alone is not sufficient for public-internet exposure.

With the default HTTPS mode, accept the self-signed certificate warning on the phone.

For advanced configuration, including running from a checkout, direct Gunicorn deployment, and Django integration, see the documentation.

For the HTTP API and storage behavior, see the API and storage documentation.

Example startup output:

Vaalboks is ready. Open one of these URLs:
  https://<your-LAN-IP>:8443/

Scan this QR code on your phone:
  [QR code rendered here in the terminal]

Built with

  • Python 3.14 and Django 6.1
  • Plain HTML, CSS, and JavaScript with HTMX

Metadata

Release files for vaalboks 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vaalboks 0.2.0
File Size Uploaded Provenance Actions
vaalboks-0.2.0.tar.gz 50.4 kB With provenance Details for vaalboks-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for vaalboks 0.2.0
File Interpreter ABI Platform Actions
vaalboks-0.2.0-py3-none-any.whl Python 3 none any Details for vaalboks-0.2.0-py3-none-any.whl

Total release size: 105.5 kB

Release files / vaalboks-0.2.0.tar.gz

Download URL vaalboks-0.2.0.tar.gz
Size 50.4 kB
Tags Source
SHA-256 checksum
How to use checksums
1d4b0b7722d8de3b73b45d50f06ec5cf0df58543cf0d1956a38fdba16caf9355
BLAKE2b-256 checksum
How to use checksums
4c916c9a473613e12d48dbe21b735b31c2ad1d5371d916fc2c22db71700975cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 12, 2026.

Transparency log

Release files / vaalboks-0.2.0-py3-none-any.whl

Download URL vaalboks-0.2.0-py3-none-any.whl
Size 55.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f936238024beb3abd989a932486547dcbe352cbd1bc10a8a516b889ce064c66b
BLAKE2b-256 checksum
How to use checksums
14b680749e5d0c03c9bd1044111ce098aa639d215cdf474a625d7f7ba3c383bb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 12, 2026.

Transparency log

Security for vaalboks 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for vaalboks-0.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 12, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page