# IO Transfer — full brief for AI agents > Screen-to-camera file and text transfer using fountain-coded animated QR codes. No network path between devices. ## What it is IO Transfer (https://iotransfer.com/) is a free progressive web app. A sender page turns a file or pasted text into a continuous stream of QR frames. A receiver page uses the device camera to recover the payload, verify SHA-256, then offer Save (files) or Copy (text). Brand: IO Transfer · Site: https://iotransfer.com/ · Copyright © 2026 IO Transfer Ltd. ## What it is not - Not a messaging app, cloud drive, or peer-to-peer network transfer - Not encrypted by default — any camera aimed at the sender screen can read the stream - Not an installable native store app (optional Add to Home Screen / PWA) ## Core facts - Channel: light only (screen → camera) - No account, pairing codes, or server-mediated transfer path between the two devices - Works offline after first visit (service worker caches the app, never transferred content) - Files up to 64 MB; text snippets supported - Filename and media type preserved; gzip when helpful - Optional matching passphrases encrypt the fountain payload (AES-GCM) - Session check codes help confirm both devices locked onto the same stream - Camera API requires a secure context (HTTPS) ## How to use (quick start) 1. Open https://iotransfer.com/ on both devices. 2. Sender: open Send, choose a file (or Text). Raise screen brightness fully. QR stream starts. 3. Receiver: open Receive, Start camera, fill the viewfinder with the code; prop the phone to reduce focus hunting. 4. When progress completes, Save the file (after SHA-256) or Copy the text. Sender deep link: https://iotransfer.com/send Receiver deep link: https://iotransfer.com/receive ## Privacy summary Nothing is transmitted anywhere except as light. There is no account, no pairing, no analytics, and no network path between the devices for the transfer itself. Without a passphrase the property is *no network*, not secrecy. Received text is not persisted; saved files go to the browser download location. Staged received media in Cache API is cleared on hide, TTL, next transfer, or Clear cache. ## Troubleshooting (high signal) - Lower sender bytes/frame and tx fps if the receiver sees nothing - Fill the camera frame; avoid hand tremor / autofocus hunting - On multi-lens phones pick wide / main rear lens, not telephoto - Max brightness on the sending screen ## Primary URLs - https://iotransfer.com/ - https://iotransfer.com/send - https://iotransfer.com/receive - https://iotransfer.com/llms.txt - https://iotransfer.com/sitemap.xml ## Source & docs Repository: https://github.com/cubbysoftware/iotransfer User docs: docs/user/ · Technical docs: docs/technical/