lanjet

Crates.iolanjet
lib.rslanjet
version0.2.0
created_at2025-11-14 05:40:53.977231+00
updated_at2025-11-16 17:24:16.858597+00
description A blazing fast LAN file sharing tool built with Rust
homepagehttps://github.com/HuRuilizhen/lanjet
repositoryhttps://github.com/HuRuilizhen/lanjet
max_upload_size
id1932335
size58,547
Ruilizhen Hu (HuRuilizhen)

documentation

README

LanJet — Fast LAN File Sharing in One Command

Rust Version Build Status Crates.io

A blazing-fast, zero-config LAN file sharing tool written in Rust. Start a lightweight HTTP file server with a clean Web UI and QR code access — all in one command.

Features

Core

  • Recursive directory scanning
  • Predictable and safe path handling
  • Automatic LAN IP detection
  • MIME type detection
  • Graceful shutdown (Ctrl+C)
  • Structured access logs (tracing + tower-http)

CLI & UX

  • Beautiful startup banner
  • Optional QR code for mobile access
  • Auto-open browser on startup
  • Configurable host binding (--local-only)
  • .lanjetignore support (similar to .gitignore)

Web UI

  • Clean HTML interface (no JS, no external assets)
  • Click to download files
  • File icons based on MIME type
  • File metadata (size, type, modified time)

Installation

Install via Cargo

cargo install lanjet

Install via cargo-binstall

cargo binstall lanjet

Quick Start

Share the current directory:

lanjet

Share a specific path:

lanjet --path /path/to/files

Start on a different port:

lanjet --port 8080

Local-only mode:

lanjet --local-only

Show QR code in banner:

lanjet --show-qrcode

CLI Options

Flag Description Default
--path File or directory to share .
--port Port to bind 80
--ignore Ignore rule file .lanjetignore
--local-only Bind only to localhost false
--show-qrcode Display QR code in banner false
--no-browser Disable auto-open browser false
--no-banner Disable banner false

Ignore Rules

LanJet supports ignore files similar to .gitignore.

Example .lanjetignore:

*.log
*.tmp
.DS_Store
node_modules/
target/

Web Interface

After starting the service, open:

http://<LAN-IP>:<PORT>

You will see a clean interface listing all files.

License

This project is licensed under the MIT License.


LanJet — Making LAN file sharing fast, simple, and beautiful.

Commit count: 0

cargo fmt