 #  SilentStream 

 

  ![SilentStream](https://cdn.richeyweb.com/images/articles/silentstream/receive.webp)    Optical file transfer · No network · No RF

Sometimes the best channel is the one nobody is listening on. SilentStream moves a file from one device to another using only a screen and a camera — animated QR codes, fountain codes, zero radio.

No Wi‑Fi. No Bluetooth. No pairing. No shared network. The payload travels as light. If you can see the screen, you can receive the file.

## Why this exists

Conventional transfer assumes RF is available and safe. That assumption is not universal. Air-gapped machines, RF-hostile environments, and devices that simply refuse to join the same network still need a way to move small-to-medium files without inventing a new physical medium. In short - air-gapped file transfer.

For a more practical example of its use - look no further than the conflict between Russia and Ukraine. Both sides using RF detection against each other shows real need for alternate non-RF transfer methods such as this.

A phone already has a bright screen and a decent camera. That is enough.

## Standing on other people’s weekends

SilentStream is not a lonely invention. It is a pure-static, installable take on an idea that has been proven more than once.

Decimen Optical Transfer is the recent browser proof-of-concept that made the idea travel again. One device streams fountain-coded QR frames; the other reconstructs the file from light alone. Self-describing frames, mid-stream join, no back-channel. Built fast, open source, and honest about real-world rates on phones. SilentStream inherits that architecture and the insistence on “any frames, any order.”

divan/txqr (2018) did the hard thinking years earlier: animated QR as a transport, then Luby Transform fountain codes so dropped frames stop being fatal. The write-ups on animated QR and fountain codes remain the clearest explanation of \*why\* rateless coding beats naive “loop the chunks until everything arrives.” If you only read one prior-art source, read those posts.

Luby Transform / fountain codes are the mathematical reason this works without a reverse channel. The sender never needs ACK/NACK. The receiver collects until it has enough independent combinations, then peels the original blocks out. Missed frames cost time, not correctness.

Other projects explored the same physical channel — sequential QR streams, offline tools, experimental grids and denser encodings. The pattern is consistent: when RF is unavailable or undesirable, light is still there.

## What SilentStream adds

- Pure static. This PWA has no moving parts. There is no reporting back to RicheyWeb or to any analytics/telemetry system.
- PWA. Install once from the browser; after that it works offline from the home screen.
- Single-file, KISS. Compress → fountain-encode → stream. Receive → reconstruct → verify → download.
- Filename in-band. The original name rides with the packets.
- WASM decode path with a pure-JS fallback, because phone cameras are the bottleneck and thermal throttling is real.
- Practical limits. Multi‑MB is possible; multi‑hundred‑MB is not the point. Soft ceiling around tens of megabytes under real lighting and stability.
 
## What it is not

It is not a replacement for Bluetooth, AirDrop, or a USB cable when those are available and allowed. Optical throughput is modest. Alignment, brightness, and a steady camera matter more than marketing copy. Anyone with line of sight can intercept the stream — treat it as a visible channel, not a secret one.

## Use it

Install the PWA on both devices from [https://www.richeyweb.com/silentstream/](/silentstream/) . One side Send, the other Receive. Prop the phone, raise the brightness, hold steady. Start with a small file until the link feels familiar.

## Credit where it is due

- Decimen Optical Transfer — [https://github.com/bashalarmistalt/decimen-optical-transfer](https://github.com/bashalarmistalt/decimen-optical-transfer))
- TXQR — [https://github.com/divan/txqr](https://github.com/divan/txqr))
- Animated QR / fountain codes write-ups — <https://divan.dev/posts/animatedqr/> , [https://divan.dev/posts/fountaincodes/](https://divan.dev/posts/fountaincodes/))
- Luby Transform / fountain codes — the rateless idea that makes a one-way optical link practical
- zxing-cpp / zxing-wasm — solid QR decode when pure JS starts to sweat
 
SilentStream is free, static, and installable. If it solves your problem, use it. If it does not, you lost nothing but a few minutes of light.



- [      email ](mailto:?subject=SilentStream&body=https%3A%2F%2Fwww.richeyweb.com%2Fsoftware%2Fjavascript%2Fsilentstream)
- [      facebook ](https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwww.richeyweb.com%2Fsoftware%2Fjavascript%2Fsilentstream)
- [      x-twitter ](https://twitter.com/intent/tweet?text=SilentStream%3A+https%3A%2F%2Fwww.richeyweb.com%2Fsoftware%2Fjavascript%2Fsilentstream)
- [      linkedin ](http://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fwww.richeyweb.com%2Fsoftware%2Fjavascript%2Fsilentstream&title=SilentStream&summary=Optical+file+transfer+%C2%B7+No+network+%C2%B7+No+RF+Sometim...)
- [      pinterest ](http://pinterest.com/pin/create/button/?url=https%3A%2F%2Fwww.richeyweb.com%2Fsoftware%2Fjavascript%2Fsilentstream&media=https%3A%2F%2Fcdn.joomla.org%2Fimages%2Fjoomla-org-og.jpg&description=SilentStream)
 


 

   [  Next article: Strip EXIF Data  Strip EXIF Data  ](/software/javascript/strip-exif-data)  

##### We Value Your Privacy

 

We use cookies to enhance your experience and for traffic analysis. By continuing to visit this site you agree to our use of cookies.

[Privacy Policy](/privacy-policy)

 Details 

###### Google Tag Manager Items

- Ad Storage
- Ad User Data
- Ad Personalization
- Analytics Storage
- Functionality Storage
- Personalization Storage
- Security Storage
 
 

 

 

 

 

 Decline Accept
```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.richeyweb.com/#organization","name":"RicheyWeb","url":"https://www.richeyweb.com/","logo":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/logo/richeyweb.svg","contentUrl":"https://www.richeyweb.com/images/logo/richeyweb.svg","width":{"@type":"QuantitativeValue","value":38,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":38,"unitCode":"PX"},"@id":"https://www.richeyweb.com/#logo"},"image":{"@id":"https://www.richeyweb.com/#logo"},"sameAs":["https://x.com/ComRicheyweb","https://www.facebook.com/RicheyWebDev/","https://www.youtube.com/channel/UCxnVG8BwOvQRO7hVqNX7T2g","https://community.joomla.org/service-providers-directory/listings/115:richeyweb.html"],"description":"RicheyWeb is a custom software developer specializing in Joomla extensions.","ContactPoint":[{"@type":"ContactPoint","url":"https://www.richeyweb.com/contact-us","telephone":"903-873-8460","contactType":"Owner/Administrator","areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"availableLanguage":"en"},{"@type":"ContactPoint","url":"https://www.richeyweb.com/bugs","telephone":"903-873-8460","contactType":"Technical Support","areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"availableLanguage":"en"}],"knowsAbout":["Computer programming",{"@type":"Thing","name":"Computer programming","sameAs":["https://en.wikipedia.org/wiki/Computer_programming","https://www.wikidata.org/wiki/Q80006","https://g.co/kg/m/01mf_"]},"PHP",{"@type":"Thing","name":"PHP","sameAs":["https://en.wikipedia.org/wiki/PHP","https://www.wikidata.org/wiki/Q59","https://g.co/kg/m/060kv"]},"JavaScript",{"@type":"Thing","name":"JavaScript","sameAs":["https://en.wikipedia.org/wiki/JavaScript","https://www.wikidata.org/wiki/Q2005","https://g.co/kg/m/02p97"]},"arduino","Computer forensics",{"@type":"Thing","name":"Computer forensics","sameAs":["https://en.wikipedia.org/wiki/Computer_forensics","https://www.wikidata.org/wiki/Q878553","https://g.co/kg/m/02wxbd"]},"White hat",{"@type":"Thing","name":"White hat","sameAs":["https://en.wikipedia.org/wiki/White_hat_(computer_security)","https://www.wikidata.org/wiki/Q7995625","https://g.co/kg/m/03ns_5"]},"Search engine optimization",{"@type":"Thing","name":"Search engine optimization","sameAs":["https://en.wikipedia.org/wiki/Search_engine_optimization","https://www.wikidata.org/wiki/Q180711","https://g.co/kg/m/019qb_"]},"Search engine marketing",{"@type":"Thing","name":"Search engine marketing","sameAs":["https://en.wikipedia.org/wiki/Search_engine_marketing","https://www.wikidata.org/wiki/Q846132","https://g.co/kg/m/06mw8r"]},"Digital marketing",{"@type":"Thing","name":"Digital marketing","sameAs":["https://en.wikipedia.org/wiki/Digital_marketing","https://www.wikidata.org/wiki/Q1323528","https://g.co/kg/g/122hcnps"]},"Web hosting service",{"@type":"Thing","name":"Web hosting service","sameAs":["https://en.wikipedia.org/wiki/Web_hosting_service","https://www.wikidata.org/wiki/Q5892272","https://g.co/kg/m/014pz4"]},"Email hosting service",{"@type":"Thing","name":"Email hosting service","sameAs":["https://en.wikipedia.org/wiki/Email_hosting_service","https://www.wikidata.org/wiki/Q5368818","https://g.co/kg/m/09w60m"]},"Internet hosting service",{"@type":"Thing","name":"Internet hosting service","sameAs":["https://en.wikipedia.org/wiki/Internet_hosting_service","https://www.wikidata.org/wiki/Q1210425","https://g.co/kg/m/09w5yw"]},"Virtual hosting",{"@type":"Thing","name":"Virtual hosting","sameAs":["https://en.wikipedia.org/wiki/Virtual_hosting","https://www.wikidata.org/wiki/Q588365","https://g.co/kg/m/024mvh"]},"Web performance",{"@type":"Thing","name":"Web performance","sameAs":["https://en.wikipedia.org/wiki/Web_performance","https://www.wikidata.org/wiki/Q7978612","https://g.co/kg/m/0gfj3f1"]},"Web content management system",{"@type":"Thing","name":"Web content management system","sameAs":["https://en.wikipedia.org/wiki/Web_content_management_system","https://www.wikidata.org/wiki/Q45211","https://g.co/kg/m/0615s2"]},"Content management system",{"@type":"Thing","name":"Content management system","sameAs":["https://en.wikipedia.org/wiki/Content_management_system","https://www.wikidata.org/wiki/Q131093","https://g.co/kg/m/0k23c"]},"General Data Protection Regulation",{"@type":"Thing","name":"General Data Protection Regulation","sameAs":["https://en.wikipedia.org/wiki/General_Data_Protection_Regulation","https://www.wikidata.org/wiki/Q1172506","https://g.co/kg/m/0pk_7xs"]},"SERP",{"@type":"Thing","name":"SERP","sameAs":["https://en.wikipedia.org/wiki/SERP","https://www.wikidata.org/wiki/Q2205811","https://g.co/kg/g/11c5szp7kc"]},"Artificial intelligence",{"@type":"Thing","name":"Artificial intelligence","sameAs":["https://en.wikipedia.org/wiki/Artificial_intelligence","https://www.wikidata.org/wiki/Q11660","https://g.co/kg/m/0mkz"]},"Prompt engineering",{"@type":"Thing","name":"Prompt engineering","sameAs":["https://en.wikipedia.org/wiki/Prompt_engineering","https://www.wikidata.org/wiki/Q108941486","https://g.co/kg/g/11p6kpgt_n"]},"E-learning",{"@type":"Thing","name":"E-learning","sameAs":["https://en.wikipedia.org/wiki/E-learning_(theory)","https://www.wikidata.org/wiki/Q182250","https://g.co/kg/g/122czm1f"]},"Sharable Content Object Reference Model",{"@type":"Thing","name":"Sharable Content Object Reference Model","sameAs":["https://en.wikipedia.org/wiki/Sharable_Content_Object_Reference_Model","https://www.wikidata.org/wiki/Q827811","https://g.co/kg/m/06_40"]},"Experience API",{"@type":"Thing","name":"Experience API","sameAs":["https://en.wikipedia.org/wiki/Experience_API","https://www.wikidata.org/wiki/Q7807728","https://g.co/kg/g/1yw9ktxr8"]},"Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]},"Nginx",{"@type":"Thing","name":"Nginx","sameAs":["https://en.wikipedia.org/wiki/Nginx","https://www.wikidata.org/wiki/Q306144","https://g.co/kg/m/02qft91"]},"MySQL",{"@type":"Thing","name":"MySQL","sameAs":["https://en.wikipedia.org/wiki/MySQL","https://www.wikidata.org/wiki/Q850","https://g.co/kg/m/04y3k"]}],"areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"memberOf":["Mensa International",{"@type":"Organization","name":"Mensa International","sameAs":["https://en.wikipedia.org/wiki/Mensa_International","https://www.wikidata.org/wiki/Q184194","https://g.co/kg/m/0140pf"]},"National Rifle Association",{"@type":"Organization","name":"National Rifle Association","sameAs":["https://en.wikipedia.org/wiki/National_Rifle_Association","https://www.wikidata.org/wiki/Q863259","https://g.co/kg/m/0j6f9"]},"CompTIA",{"@type":"Organization","name":"CompTIA","sameAs":["https://en.wikipedia.org/wiki/CompTIA","https://www.wikidata.org/wiki/Q597534","https://g.co/kg/m/040shq"]},"ISFCE LLC",{"@type":"Organization","name":"ISFCE LLC","sameAs":["https://isfce.com","https://g.co/kg/g/11wxm5r0rg"]}],"hasCredential":[{"@type":"EducationalOccupationalCredential","name":"Joomla 3 Certified Administrator","credentialCategory":"Certification","description":"Administrator Exam is the first available Joomla! certification exam","recognizedBy":{"@type":"Organization","name":"Open Source Matters, Inc.","sameAs":["https://en.wikipedia.org/wiki/Open_Source_Matters,_Inc.","https://g.co/kg/g/11f00wvjhz"]},"url":"https://certification.joomla.org/certified-user-directory/michael-richey","about":["Content management system",{"@type":"Thing","name":"Content management system","sameAs":["https://en.wikipedia.org/wiki/Content_management_system","https://www.wikidata.org/wiki/Q131093","https://g.co/kg/m/0k23c"]},"Web content management system",{"@type":"Thing","name":"Web content management system","sameAs":["https://en.wikipedia.org/wiki/Web_content_management_system","https://www.wikidata.org/wiki/Q45211","https://g.co/kg/m/0615s2"]},"Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]}],"educationalLevel":"expert","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/contact/badge.webp","contentUrl":"https://www.richeyweb.com/images/contact/badge.webp","width":{"@type":"QuantitativeValue","value":300,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":86,"unitCode":"PX"},"caption":"Joomla 3 Certified Administrator"}},{"@type":"EducationalOccupationalCredential","name":"Certified Computer Examiner","credentialCategory":"Certification","description":"Internationally recognized computer forensics certifiecation","recognizedBy":{"@type":"Organization","name":"ISFCE LLC","sameAs":["https://en.wikipedia.org/wiki/ISFCE_LLC","https://g.co/kg/g/11wxm5r0rg"]},"url":"https://isfce.com/","about":["Digital forensics",{"@type":"Thing","name":"Digital forensics","sameAs":["https://en.wikipedia.org/wiki/Digital_forensics","https://www.wikidata.org/wiki/Q3246940","https://g.co/kg/m/0cnxzfx"]},"Computer forensics",{"@type":"Thing","name":"Computer forensics","sameAs":["https://en.wikipedia.org/wiki/Computer_forensics","https://www.wikidata.org/wiki/Q878553","https://g.co/kg/m/02wxbd"]},"Mobile device forensics",{"@type":"Thing","name":"Mobile device forensics","sameAs":["https://en.wikipedia.org/wiki/Mobile_device_forensics","https://www.wikidata.org/wiki/Q6887097","https://g.co/kg/m/06zp3tp"]},"Network forensics",{"@type":"Thing","name":"Network forensics","sameAs":["https://en.wikipedia.org/wiki/Network_forensics","https://www.wikidata.org/wiki/Q7001032","https://g.co/kg/m/05pb280"]},"Database forensics",{"@type":"Thing","name":"Database forensics","sameAs":["https://en.wikipedia.org/wiki/Database_forensics","https://www.wikidata.org/wiki/Q5227405","https://g.co/kg/m/0cgqsy"]}],"educationalLevel":"expert","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/contact/isfce-cce.webp","contentUrl":"https://www.richeyweb.com/images/contact/isfce-cce.webp","width":{"@type":"QuantitativeValue","value":150,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":150,"unitCode":"PX"},"caption":"Certified Computer Examiner"}}],"hasOfferCatalog":{"@type":"OfferCatalog","name":"Web Services","itemListElement":[{"@type":"Offer","itemOffered":{"@type":"Service","name":"Hosting"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Development"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Search Engine Optimization"}}]}},{"@type":"WebSite","@id":"https://www.richeyweb.com/#website","url":"https://www.richeyweb.com/","name":"RicheyWeb","publisher":{"@id":"https://www.richeyweb.com/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.richeyweb.com/search?q={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string","valueMaxLength":256,"valueMinLength":2,"valuePattern":"^[A-Za-z0-9\\s]+$"}},"creator":{"@id":"https://www.richeyweb.com/#organization"},"copyrightHolder":{"@id":"https://www.richeyweb.com/#organization"}},{"@type":"WebPage","@id":"https://www.richeyweb.com/software/javascript/silentstream#webpage","url":"https://www.richeyweb.com/software/javascript/silentstream","name":"SilentStream","description":"SilentStream enables air-gapped file transfer using animated QR codes and fountain codes, requiring no Wi-Fi, Bluetooth, or pairing.","isPartOf":{"@id":"https://www.richeyweb.com/#website"},"about":{"@id":"https://www.richeyweb.com/#organization"},"inLanguage":"en-GB"},{"@type":"Article","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/silentstream/receive.webp","contentUrl":"https://www.richeyweb.com/images/articles/silentstream/receive.webp","width":{"@type":"QuantitativeValue","value":1080,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":607,"unitCode":"PX"},"caption":"SilentStream","representativeOfPage":true},"headline":"SilentStream","description":"SilentStream enables air-gapped file transfer using animated QR codes and fountain codes, requiring no Wi-Fi, Bluetooth, or pairing.","author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"},"datePublished":"2026-08-02T00:00:00+00:00","dateModified":"2026-08-02T00:00:00+00:00","mainEntityOfPage":"File transfer","about":["QR code",{"@type":"Thing","name":"QR code","sameAs":["https://en.wikipedia.org/wiki/QR_code","https://www.wikidata.org/wiki/Q12203","https://g.co/kg/m/03ffw1"]},"Mobile app development",{"@type":"Thing","name":"Mobile app development","sameAs":["https://en.wikipedia.org/wiki/Mobile_app_development","https://www.wikidata.org/wiki/Q2988038","https://g.co/kg/m/0bn2st"]},"WebAssembly",{"@type":"Thing","name":"WebAssembly","sameAs":["https://en.wikipedia.org/wiki/WebAssembly","https://www.wikidata.org/wiki/Q20155677","https://g.co/kg/g/11c3kj4zzq"]},"Air gap",{"@type":"Thing","name":"Air gap","sameAs":["https://en.wikipedia.org/wiki/Air_gap_(networking)","https://www.wikidata.org/wiki/Q589710","https://g.co/kg/m/0b1xsq"]}],"mentions":["Wi-Fi",{"@type":"Thing","name":"Wi-Fi","sameAs":["https://en.wikipedia.org/wiki/Wi-Fi","https://www.wikidata.org/wiki/Q29643","https://g.co/kg/m/0h4d9"]},"Bluetooth",{"@type":"Thing","name":"Bluetooth","sameAs":["https://en.wikipedia.org/wiki/Bluetooth","https://www.wikidata.org/wiki/Q39531","https://g.co/kg/m/017lm"]},"Luby transform code",{"@type":"Thing","name":"Luby transform code","sameAs":["https://en.wikipedia.org/wiki/Luby_transform_code","https://www.wikidata.org/wiki/Q13563306","https://g.co/kg/m/06s84n"]}],"@id":"https://www.richeyweb.com/software/javascript/silentstream#article","isPartOf":{"@id":"https://www.richeyweb.com/software/javascript/silentstream#webpage"},"publisher":{"@id":"https://www.richeyweb.com/#organization"},"keywords":"SilentStream, Optical file transfer, No network, No RF, animated QR codes, fountain codes, zero radio, No Wi‑Fi, No Bluetooth, No pairing, No shared network, payload travels as light, air-gapped machines, RF-hostile environments, non-RF transfer methods, Decimen Optical Transfer, browser proof-of-concept, Self-describing frames, mid-stream join, no back-channel, divan/txqr, animated QR, Luby Transform, fountain codes, rateless coding, sequential QR streams, offline tools, PWA, Compress → fountain-encode → stream, Receive → reconstruct → verify → download, Filename in-band, WASM decode path, pure-JS fallback, phone cameras, thermal throttling, Multi‑MB, multi‑hundred‑MB, Optical throughput, visible channel, https://www.richeyweb.com/silentstream/, zxing-cpp, zxing-wasm, static, installable","articleSection":"JavaScript","url":"https://www.richeyweb.com/software/javascript/silentstream"}]}
```
