{"repo":"jcubic/sysend","free":true,"listed":false,"github":"https://github.com/jcubic/sysend","clone":"git clone https://github.com/jcubic/sysend.git","description":"Web application synchronization between different tabs","language":"JavaScript","stars":1162,"topics":["callback","notifications","events","browser","tabs","javascript","proxy","messages","pubsub","communication"],"license":"MIT","category":"networking-infra","readme_excerpt":"Web application synchronization between different tabs sysend.js is a small library that allows to send messages between pages that are open in the same browser. It also supports Cross-Domain communication (Cross-Origin). The library doesn't have any dependencies and uses the HTML5 LocalStorage API or BroadcastChannel API. If your browser don't support BroadcastChannel (see Can I Use) then you can send any object that can be serialized to JSON. With BroadcastChannel you can send any object (it will not be serialized to string but the values are limited to the ones that can be copied by the structured cloning algorithm). You can also send empty notifications. Tested on: GNU/Linux: in Chromium 34, Firefox 29, Opera 12.16 (64bit) Windows 10 64bit: in IE11 and Edge 38, Chrome 56, Firefox 51 MacOS X El Captain: Safari 9, Chrome 56, Firefox 51 Note about Safari 7+ and Cross-Domain communication All cross-domain communication is disabled by default with Safari 7+. Because of a feature that blocks 3rd party tracking for iframe, and any iframe used for cross-domain communication runs in a sandboxed environment. That's why this library like any other solution for cross-domain communication, don't work on Safari. Note about Chrome 115+ and different domains Since version 115 Google Chrome introduced Third-party storage partitioning. Because of this feature, Cross-domain communication only works on subdomains. There will probably be a way to share the context using some kind of permissio","default_branch":null,"files":null,"tree":[],"storefront":"/r/jcubic","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/jcubic/sysend/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}