Giraffile is a browser-based file sharing tool built around a deliberately small promise: pick a file, choose how long the link should live, send the link, and the file destroys itself when the timer runs out. Nothing is stored on a server in between. The application runs entirely in the browser and moves the data peer-to-peer over WebRTC, keeping the actual bytes inside an IndexedDB store on the sender’s device until the recipient collects them.
The workflow is a three-step wizard: select the file, set the expiry, generate the link. Files are held locally in the browser’s IndexedDB rather than uploaded to a cloud store, and the transfer between the two browsers is negotiated through PeerJS, which wraps WebRTC data channels. The recipient opens the generated link, the two browsers connect directly, and the payload streams across. Once the configured time expires, the link and the stored file are gone. Links can also be shared as a QR code for phones, and several files can be packed together before sending.
The “zero-server” claim covers the file data, not the whole session: the browsers still need a signalling service to find each other, and Giraffile uses the public PeerJS broker for that by default. When a direct connection cannot be established, WebRTC may fall back to a relay, so the traffic is not guaranteed to stay entirely between the two machines. Because the file lives in the sender’s browser, both sides have to be online at the same time for the transfer to happen; this is a live hand-off, not a mailbox. The interface caps a single share at 1.5 GB, and the link only works while the sender’s tab stays open with the file still in local storage.