A simple, fast, and beautiful local file sharing service
Project description
localfs
A simple, fast, and beautiful local file sharing service built with Python and Flask. Share your media library (videos, audio, images) across your local network through a clean, modern web interface.
Features
- Instant web access — view and download files from any device on your network
- Built-in video & audio player with auto-generated thumbnails
- Live search filtering
- Clean, modern UI styled with Tailwind CSS
- Configurable file-type filtering
- Optional access key for web interface security
- JSON API endpoint for sharing activity logs
Quick Start
Install via pip
pip install localfs
Install from source
git clone https://github.com/rkriad585/localfs.git
cd localfs
pip install -e .
python -m localfs
Install via script (Linux / macOS)
curl -fsSL https://raw.githubusercontent.com/rkriad585/localfs/main/installer.sh | sh
Install via script (Windows PowerShell)
irm https://raw.githubusercontent.com/rkriad585/localfs/main/installer.ps1 | iex
Open the URL printed in the terminal to access the web interface.
Docker
docker build -t localfs .
docker run -p 5000:5000 -v ./media:/app/media localfs
Or with docker compose:
docker compose up
Documentation
Full documentation is in the docs/ directory:
| Guide | Description |
|---|---|
| Setup Guide | Installation and first run |
| Usage Guide | How to use localfs |
| Configuration | All config options explained |
| API Reference | JSON API documentation |
| Development | Setting up a dev environment |
| Deployment | Production deployment options |
| Troubleshooting | Common issues and fixes |
| Architecture | Project architecture overview |
Build Commands
make build # Build wheel and sdist
make install # Install in editable mode
make test # Run tests
make lint # Run linter
make format # Format code
make run # Start server
make clean # Remove build artifacts
make docker # Build Docker image
Project Structure
localfs/
├── main.py # Application entry point and Flask routes
├── config.py # Configuration constants
├── pyproject.toml # Project metadata and dependencies
├── Dockerfile # Multi-stage Docker build
├── docker-compose.yml # Docker Compose configuration
├── Makefile # Build automation
├── build.sh / .ps1 # Cross-platform build scripts
├── installer.sh / .ps1 # System installer / uninstaller
│
├── data/ # Runtime data (logs, auto-created)
├── media/ # Place your shared files here
├── static/
│ ├── js/main.js # Search filtering logic
│ ├── logo.svg # Project logo
│ └── thumbnails/ # Auto-generated video thumbnails
├── templates/
│ ├── index.html # File grid homepage
│ ├── player.html # Video/audio player page
│ └── error.html # Error pages (401/403/404/500)
├── tests/
│ ├── conftest.py # Pytest fixtures
│ ├── test_config.py # Config tests
│ └── test_main.py # Main application tests
└── docs/ # Documentation
Uninstalling
localfs --selfuninstall
Uninstall via script (Linux / macOS)
curl -fsSL https://raw.githubusercontent.com/rkriad585/localfs/main/installer.sh | sh -s -- --selfuninstall
Uninstall via script (Windows PowerShell)
Invoke-RestMethod -Uri "https://raw.githubusercontent.com/rkriad585/localfs/main/installer.ps1" | Invoke-Expression -ArgumentList "--selfuninstall"
License
Distributed under the MIT License. See LICENSE for more information.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file localfs-1.0.0.tar.gz.
File metadata
- Download URL: localfs-1.0.0.tar.gz
- Upload date:
- Size: 34.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c92c23b723fd77ebc4d4a0e4ae136484e2b930bbddbe6feaa2f82a87cf5f33f2
|
|
| MD5 |
eb1e94d9d8830b812caba14d5088d6fd
|
|
| BLAKE2b-256 |
678ed6afbc4dbdcef87358b26f97d4ee2a8d48c665b2ac0fed83db04fe287538
|
File details
Details for the file localfs-1.0.0-py3-none-any.whl.
File metadata
- Download URL: localfs-1.0.0-py3-none-any.whl
- Upload date:
- Size: 19.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
da31d7637318f514ddc6d672f6fbff1f916f560dde19bb789931b14231674eff
|
|
| MD5 |
19bfb287b368f87cd53f7fd11b51385f
|
|
| BLAKE2b-256 |
d5955a7acce495c8c0c508547938d74ef1de2d046a47ae155f72dac8e5bdaf96
|