File Shifter
A LAN file-relay server built to understand Node's event loop, streams, and raw HTTP parsing — no framework doing the work for me.
Why I Built This
I wanted to understand what Express is actually doing underneath, so I stripped it out and wrote the request parsing, cookie handling, and routing by hand. This is a learning project — not something meant to compete with a real file-sharing tool — but it runs, and it does what it's built to do: move files across a LAN without loading the whole thing into memory at once.
How It Works
A recipient can start downloading a file while it's still being uploaded — the server just pipes it through.
Cookie parsing and device checks, written without any middleware library.
Generates a QR code and tracks IP changes so the link keeps working if the network shifts.
PassThrough streams keep memory flat even on large files — nothing gets fully loaded into RAM.
Run It Yourself
Windows
Uses a small PowerShell installer to set up the Node.js environment.
Download here: file_shifter-2.4.2.zip
Run install.cmd (extract first)
Execute App.bat
Linux
sudo apt install nodejs
npm install && npm start