v1.0.3 · Local-first · No accounts

One machine running,
every device on the LAN shares in seconds

LanBeam is a local-first file transfer and real-time sharing tool for your network. Launch it on one machine and any device on the same network can upload, download, and share text and images right from the browser — no accounts, and nothing ever touches the cloud.

npm i -g lanbeam

Then run lanbeam to start the service.

— lanbeam — 80×24
npm i -g lanbeam
added 15 packages in 4.2s
lanbeam
🚀 File transfer server started
📁 File storage directory: /Users/you/lanbeam-files
📏 Max file size: 200MB
 
🌐 Access address:
Local access: http://localhost:3001
Local access: http://127.0.0.1:3001
 
🔗 LAN access:
💡 Other devices can access the file transfer service via the LAN address above
 
▸

Features

What it does

A lightweight service running on your computer that covers the most common sharing needs on your LAN.

Drag-and-drop transfer

Drag files or whole folders into the browser to upload, keeping the directory structure intact. Every device can download or delete at any time.

Real-time sharing

One shared note, synced in real time across every open device. Paste an image and it's instantly visible — perfect for swapping screenshots.

Zero-friction access

The other side needs nothing installed — just send the address; any browser opens it instantly, on phones and computers alike.

Local-first

Files live only on the machine running LanBeam. No accounts, no cloud drives — traffic never leaves your LAN.

Large files, no sweat

Supports files up to 200MB by default, adjustable with --max-size. LAN transfers run at full bandwidth.

Private & secure

Shared notes and images live in memory only and are wiped the moment the server stops. Nothing is uploaded, and there is no telemetry.

Quick Start

Get started in 3 steps

From installation to your first connected device in under a minute.

Install macOS / Linux

macOS and Linux get a standalone binary via a one-line script — no Node.js needed; Windows uses winget or a direct download.

curl -fsSL https://lanbeam.k1nz.top/install.sh | bash
Windows
winget install k1nz.LanBeam

Launch Any OS

Run lanbeam in your terminal. The service starts on port 3001 and automatically increments to find a free port when it's taken.

lanbeam

Connect Any device

Send the LAN address from your terminal to any device on the same network. Opening it in a browser enables upload, download, and sharing — nothing to install on the other side.

http://192.168.1.24:3001

Install

Install it your way

LanBeam ships as an npm package, with standalone executables for macOS, Linux, and Windows plus a winget channel. Pick whichever you prefer.

  • npm global install (requires Node.js 18+): npm i -g lanbeam
  • curl one-liner (macOS / Linux, no Node.js): curl -fsSL https://lanbeam.k1nz.top/install.sh
  • Windows (winget or GitHub Releases): winget install k1nz.LanBeamComing soon
  • Run from source (for development): git clone && pnpm install && pnpm dev
— lanbeam --help —
lanbeam --help
Usage: lanbeam [options]
 
--port <port> specify port (default 3001)
--max-size <MB> max file size (default 200)
--help show help
 
# use a custom port
lanbeam --port 8080
# cap a single file at 500MB
lanbeam --max-size 500
# auto-increment when the port is taken (3001 → 3020)
lanbeam # 3001 taken → auto-switch to 3002

Privacy

Your data stays entirely on your LAN

LanBeam has no server side and collects no data. Uploaded files live only on the machine running it; shared text and images exist in memory only and are cleared the moment the process stops.

Only devices on the same network can reach it — nothing outside your LAN can, there are no accounts, and there's no cloud relay.

  • No accounts, no cloud — no service in the middle logging your activity
  • Files stay on your machine — uploads go to the lanbeam-files/ directory and are gone when deleted
  • Text & images in memory only — cleared when the server stops — never written to disk, never persisted
  • LAN-only boundary — bound to LAN addresses only; unreachable from outside networks
  • Open source, MIT licensed — all code public and auditable

FAQ

Frequently asked questions

No. Just send them the LAN address from your terminal — anyone can open it in any browser (phone, tablet, or computer) to upload and download. With LanBeam, the browser is the client.
No — LanBeam is designed to be a LAN tool. Devices must be on the same network (same Wi-Fi or wired). This guarantees your data never leaves the LAN and never touches the cloud.
By default each file is capped at 200MB. Use lanbeam --max-size 500 to allow 500MB, or set the MAX_FILE_SIZE environment variable.
It starts on port 3001 by default; if taken, it automatically increments (3001 → 3020) until a free port is found and prints the actual address. You can also set one manually with lanbeam --port 8080.
In the lanbeam-files/ directory under where you run LanBeam (server/uploads/ when running from source). Files are written as ordinary files, so you can access, back up, or delete them anytime.
No. They only live in server memory (up to the last 20 images, 10MB each); everything is cleared when the server stops and is never written to disk.
Not at all. LanBeam is free, open source (MIT), and has no account system. Install and go — your files and data stay on your own devices.

File transfershouldn't be this hard

Install once, launch anytime. No accounts, no cloud uploads, no third parties — the fastest way to move files on your LAN.