nono-server
v1.0.1
Published
Simple LAN/public file server with tunnel support
Readme
nono-server
Instant file server for your PC. Browse and download files from any device via browser. Send files from phone to PC via Termux. Supports tunneling to public internet with one flag.
Install & run
npx nono-server --serveo=yournameNext time just:
npx nono-serverConfig saves automatically. First run with no flags shows tunnel options and exits.
Tunnels
Pick one on first run. Saves to config, never ask again.
| Flag | Needs install | URL |
|---|---|---|
| --serveo=name | no (SSH only) | name.serveousercontent.com |
| --serveo | no (SSH only) | random serveo subdomain |
| --localhostrun | no (SSH only) | *.lhr.life |
| --localtunnel | no (npx) | *.loca.lt |
| --ngrok | yes + account | *.ngrok-free.app |
| --cloudflare | yes (cloudflared) | *.trycloudflare.com |
| --bore | yes (bore) | bore.pub |
| --tunnel="cmd" | whatever cmd needs | your cmd's output |
For --tunnel use $PORT as placeholder:
npx nono-server --tunnel="ngrok http $PORT"
npx nono-server --tunnel="cloudflared tunnel --url http://localhost:$PORT"What you get
- Browse all drives and mounted devices from phone browser
- GDrive-like UI, big touch-friendly buttons
- Toggle hidden folders
- Click breadcrumb segments to navigate
- Download any file directly from browser
- Upload from Termux (phone → PC) to
~/downloads - QR code printed in terminal for both localhost and public URL
Config
Auto-created on first run. Location depends on OS:
| OS | Path |
|---|---|
| Linux | ~/.config/nono/config.json |
| Mac | ~/Library/Application Support/nono/config.json |
| Windows | %APPDATA%\nono\config.json |
{
"port": 4269,
"uploadDir": "/home/user/Downloads",
"tunnel": "serveo",
"serveoSubdomain": "yourname"
}Reset config:
npx nono-server --resetOverride port without changing config:
npx nono-server --port=8080Security
- No auth — anyone with your URL can browse and download
- Jailed to home dir and mounted drives — can't escape to
/ - Browser UI is read-only — upload only via
/uploadendpoint - Tear tunnel down with
ctrl+cwhen done
Push a release:
npm version patch
git push --follow-tagsLicense
MIT
