Skip to content

RustyFile

A fast, lightweight self-hosted file browser. Browse, stream, edit, and upload files through a modern web interface — all from a single binary.

Blazing Fast

Rust-powered backend with zero GC pauses. Sub-50ms startup, zero-copy file streaming, and ~15 MB memory footprint.

Single Binary

One binary, no runtime dependencies. The React frontend is embedded directly into the Rust binary via rust-embed. Just download and run.

Video Streaming

Stream video with HTTP range requests and on-demand HLS transcoding via FFmpeg. Subtitles (VTT, SRT, ASS) are auto-detected.

Resumable Uploads

TUS 1.0 protocol support means large uploads survive network interruptions. Drag-and-drop with concurrent upload queues.

Secure by Default

Path traversal prevention, JWT + Argon2id auth, rate-limited login, token blocklisting, blocked upload extensions, constant-time password checks, CSP headers, and atomic file writes.

Full-Text Search

Find files instantly with SQLite FTS5-powered search. Filter by type, size, date, and path. Index stays in sync via filesystem watcher.

Zero Config

Launch with a single command. First-run setup wizard creates your admin account. Configure via CLI flags, environment variables, or TOML.

Terminal window
# Download and run
rustyfile --root /path/to/files
# Or with Docker
docker run -d -p 8080:80 -v /your/files:/data rustyfile/rustyfile

Visit http://localhost:8080 and create your admin account during the 5-minute setup window.