13 KiB
13 KiB
Awesome JavaScript Network !Awesome (https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg) (https://github.com/Kikobeats/awesome-network-js) !Build Status
(https://img.shields.io/travis/Kikobeats/awesome-network-js/master.svg?style=flat-square) (https://travis-ci.org/Kikobeats/awesome-network-js) !Donate (https://img.shields.io/badge/donate-paypal-blue.svg?style=flat-square)
(https://paypal.me/kikobeats)
▐ A 🎩 list of network layer resources written pure JS.
High level
▐ Based, at least, in a CLI interface.
⟡ airpaste (https://github.com/mafintosh/airpaste) – 1-1 network pipe that auto discovers other peers using mdns.
⟡ blecat (https://github.com/mafintosh/blecat) – 1-1 pipe over bluetooth low energy.
⟡ deejay (https://github.com/mafintosh/deejay) – Music player that broadcasts to everyone on the same network.
⟡ dhtkv (https://github.com/maxogden/dhtkv) – CLI for storing arbitrary key/value data in the bittorrent mainline DHT.
⟡ gun (https://github.com/amark/gun) – A realtime, decentralized, offline-first, graph database engine.
⟡ hyperpipe (https://github.com/mafintosh/hyperpipe) – Distributed input/output pipe.
⟡ hypervision (https://github.com/mafintosh/hypervision) – P2P Television.
⟡ instant.io (https://github.com/webtorrent/instant.io) – Streaming file transfer over WebTorrent.
⟡ ipp-printer (https://github.com/watson/ipp-printer) – Create a printer on your network.
⟡ peercast (https://github.com/mafintosh/peercast) – Like peerflix but for Chromecast.
⟡ peerflix (https://github.com/mafintosh/peerflix) – Streaming torrent client.
⟡ peervisionary (https://github.com/mafintosh/peervisionary) – Stream p2p content over your local network.
⟡ peerwiki (https://github.com/mafintosh/peerwiki) – browse all of wikipedia using bittorrent.
⟡ screencat (https://github.com/maxogden/screencat) – WebRTC screensharing app.
⟡ signalhub (https://github.com/mafintosh/signalhub) – Simple signalling server that can be used to coordinate handshaking with webrtc or other fun stuff.
⟡ torrent-mount (https://github.com/mafintosh/torrent-mount) – Mount a torrent (or magnet link) as a filesystem in real time using torrent-stream and fuse.
⟡ webcat (https://github.com/mafintosh/webcat) – pipe across the web using WebRTC.
⟡ websocketd (https://github.com/joewalnes/websocketd) – Turn any program that uses stdin/stdout into a WebSocket server.
⟡ webtorrent (https://github.com/webtorrent/webtorrent) – BitTorrent over WebRTC.
⟡ wifi-triangulate (https://github.com/watson/wifi-triangulate) – Finds your current position on planet earth using the wifi access point.
Modules
▐ Do one thing well.
⟡ airplay-server (https://github.com/watson/airplay-server) – A low level AirPlay server.
⟡ castnow (https://github.com/xat/chromecast-player) – simple chromecast player.
⟡ discovery-swarm (https://github.com/mafintosh/discovery-swarm) – A network swarm that uses discovery-channel (https://github.com/maxogden/discovery-channel) to find peers. Also check webrtc-swarm
(https://github.com/mafintosh/webrtc-swarm).
⟡ dns-packet (https://github.com/mafintosh/dns-packet) – Abstract-encoding compliant module for encoding / decoding DNS packets. Also see dns-socket (https://github.com/mafintosh/dns-socket).
⟡ etcdjs (https://github.com/mafintosh/etcdjs) – Low level etcd v2 client written in Javascript with failover support.
⟡ geocode-wifi (https://github.com/watson/geocode-wifi) – Get yours latitude/longitude based on your wifi access point.
⟡ hash-to-port (https://github.com/mafintosh/hash-to-port) – Hash a value to a valid port.
⟡ hyperdb (https://github.com/mafintosh/hyperdb) – Distributed scalable database.
⟡ ip-packet (https://github.com/mafintosh/ip-packet) – Encode/decode raw ip packets.
⟡ magnet-uri (https://github.com/webtorrent/magnet-uri) – Parse a magnet URI and return an object of keys/values.
⟡ mutex-server (https://github.com/samchon/mutex-server) - Critical section controllers, like mutex and semaphore, in the network level.
⟡ network-address (https://github.com/mafintosh/network-address) – Get the local network address of your machine.
⟡ network-simulator (https://github.com/substack/network-simulator) – Simulate a low-level computer network.
⟡ rtsp-stream (https://github.com/watson/rtsp-stream) - A transport agnostic RTSP serial multiplexer module for Node.
⟡ simple-peer (https://github.com/feross/simple-peer) – Simple WebRTC video/voice and data channels.
⟡ simple-websocket (https://github.com/feross/simple-websocket) – Simple, EventEmitter API for WebSockets.
⟡ torrent-discovery (https://github.com/webtorrent/torrent-discovery) – Discover BitTorrent and WebTorrent peers.
⟡ torrent-stream (https://github.com/mafintosh/torrent-stream) – The low level streaming torrent engine that peerflix uses.
⟡ udp-packet (https://github.com/substack/udp-packet) – Encode/decode raw udp packets.
⟡ rpc-websockets (https://github.com/elpheria/rpc-websockets) - JSON-RPC 2.0 implementation over WebSockets for Node.js and JavaScript.
Protocols
▐ Implementation of protocols specs in pure javascript.
⟡ airswarm (https://github.com/mafintosh/airswarm) – Network swarm that automagically discovers other peers on the network using multicast dns.
⟡ bittorrent-dht (https://github.com/webtorrent/bittorrent-dht) – BitTorrent DHT protocol implementation.
⟡ bittorrent-protocol (https://github.com/webtorrent/bittorrent-protocol) – BitTorrent peer wire protocol implementation.
⟡ bittorrent-tracker (https://github.com/webtorrent/bittorrent-tracker) – BitTorrent tracker (client & server) implementation
⟡ bonjour (https://github.com/watson/bonjour) – A Bonjour/Zeroconf protocol implementation.
⟡ castv2 (https://github.com/thibauts/node-castv2) – An implementation of the Chromecast CASTV2 protocol.
⟡ dht-rpc (https://github.com/mafintosh/dht-rpc) – Make RPC calls over a Kademlia (https://pdos.csail.mit.edu/~petar/papers/maymounkov-kademlia-lncs.pdf) based DHT.
⟡ dns-discovery (https://github.com/mafintosh/dns-discovery) – Discovery peers in a distributed system using regular dns and multicast dns.
⟡ hypercore (https://github.com/mafintosh/hypercore) – A p2p network for distributing and replicating static feeds of binary data.
⟡ ipfs (https://github.com/ipfs/js-ipfs-api) – The InterPlanetary File System, a new peer-to-peer hypermedia protocol.
⟡ k-bucket (https://github.com/tristanls/k-bucket) – Kademlia DHT K-bucket implementation as a binary tree.
⟡ k-rpc (https://github.com/mafintosh/k-rpc) – Implementation of the k-rpc protocol used the BitTorrent DHT. Also see k-rpc-socket (https://github.com/mafintosh/k-rpc-socket).
⟡ mdns (https://github.com/agnat/node_mdns) – mdns/zeroconf/bonjour service discovery.
⟡ multicast-dns (https://github.com/mafintosh/multicast-dns) – Low level multicast-dns implementation.
⟡ peervision (https://github.com/mafintosh/peervision) – Live p2p streaming protocol.
⟡ polo (https://github.com/mafintosh/polo) – A zero configuration service discovery module.
⟡ rtsp-server (https://github.com/watson/rtsp-server) – A low level module for creating RTSP servers.
⟡ utp-native (https://github.com/mafintosh/utp-native) – micro transport protocol, a network protocol similar to tcp that runs on top of udp.
(https://img.shields.io/travis/Kikobeats/awesome-network-js/master.svg?style=flat-square) (https://travis-ci.org/Kikobeats/awesome-network-js) !Donate (https://img.shields.io/badge/donate-paypal-blue.svg?style=flat-square)
(https://paypal.me/kikobeats)
▐ A 🎩 list of network layer resources written pure JS.
High level
▐ Based, at least, in a CLI interface.
⟡ airpaste (https://github.com/mafintosh/airpaste) – 1-1 network pipe that auto discovers other peers using mdns.
⟡ blecat (https://github.com/mafintosh/blecat) – 1-1 pipe over bluetooth low energy.
⟡ deejay (https://github.com/mafintosh/deejay) – Music player that broadcasts to everyone on the same network.
⟡ dhtkv (https://github.com/maxogden/dhtkv) – CLI for storing arbitrary key/value data in the bittorrent mainline DHT.
⟡ gun (https://github.com/amark/gun) – A realtime, decentralized, offline-first, graph database engine.
⟡ hyperpipe (https://github.com/mafintosh/hyperpipe) – Distributed input/output pipe.
⟡ hypervision (https://github.com/mafintosh/hypervision) – P2P Television.
⟡ instant.io (https://github.com/webtorrent/instant.io) – Streaming file transfer over WebTorrent.
⟡ ipp-printer (https://github.com/watson/ipp-printer) – Create a printer on your network.
⟡ peercast (https://github.com/mafintosh/peercast) – Like peerflix but for Chromecast.
⟡ peerflix (https://github.com/mafintosh/peerflix) – Streaming torrent client.
⟡ peervisionary (https://github.com/mafintosh/peervisionary) – Stream p2p content over your local network.
⟡ peerwiki (https://github.com/mafintosh/peerwiki) – browse all of wikipedia using bittorrent.
⟡ screencat (https://github.com/maxogden/screencat) – WebRTC screensharing app.
⟡ signalhub (https://github.com/mafintosh/signalhub) – Simple signalling server that can be used to coordinate handshaking with webrtc or other fun stuff.
⟡ torrent-mount (https://github.com/mafintosh/torrent-mount) – Mount a torrent (or magnet link) as a filesystem in real time using torrent-stream and fuse.
⟡ webcat (https://github.com/mafintosh/webcat) – pipe across the web using WebRTC.
⟡ websocketd (https://github.com/joewalnes/websocketd) – Turn any program that uses stdin/stdout into a WebSocket server.
⟡ webtorrent (https://github.com/webtorrent/webtorrent) – BitTorrent over WebRTC.
⟡ wifi-triangulate (https://github.com/watson/wifi-triangulate) – Finds your current position on planet earth using the wifi access point.
Modules
▐ Do one thing well.
⟡ airplay-server (https://github.com/watson/airplay-server) – A low level AirPlay server.
⟡ castnow (https://github.com/xat/chromecast-player) – simple chromecast player.
⟡ discovery-swarm (https://github.com/mafintosh/discovery-swarm) – A network swarm that uses discovery-channel (https://github.com/maxogden/discovery-channel) to find peers. Also check webrtc-swarm
(https://github.com/mafintosh/webrtc-swarm).
⟡ dns-packet (https://github.com/mafintosh/dns-packet) – Abstract-encoding compliant module for encoding / decoding DNS packets. Also see dns-socket (https://github.com/mafintosh/dns-socket).
⟡ etcdjs (https://github.com/mafintosh/etcdjs) – Low level etcd v2 client written in Javascript with failover support.
⟡ geocode-wifi (https://github.com/watson/geocode-wifi) – Get yours latitude/longitude based on your wifi access point.
⟡ hash-to-port (https://github.com/mafintosh/hash-to-port) – Hash a value to a valid port.
⟡ hyperdb (https://github.com/mafintosh/hyperdb) – Distributed scalable database.
⟡ ip-packet (https://github.com/mafintosh/ip-packet) – Encode/decode raw ip packets.
⟡ magnet-uri (https://github.com/webtorrent/magnet-uri) – Parse a magnet URI and return an object of keys/values.
⟡ mutex-server (https://github.com/samchon/mutex-server) - Critical section controllers, like mutex and semaphore, in the network level.
⟡ network-address (https://github.com/mafintosh/network-address) – Get the local network address of your machine.
⟡ network-simulator (https://github.com/substack/network-simulator) – Simulate a low-level computer network.
⟡ rtsp-stream (https://github.com/watson/rtsp-stream) - A transport agnostic RTSP serial multiplexer module for Node.
⟡ simple-peer (https://github.com/feross/simple-peer) – Simple WebRTC video/voice and data channels.
⟡ simple-websocket (https://github.com/feross/simple-websocket) – Simple, EventEmitter API for WebSockets.
⟡ torrent-discovery (https://github.com/webtorrent/torrent-discovery) – Discover BitTorrent and WebTorrent peers.
⟡ torrent-stream (https://github.com/mafintosh/torrent-stream) – The low level streaming torrent engine that peerflix uses.
⟡ udp-packet (https://github.com/substack/udp-packet) – Encode/decode raw udp packets.
⟡ rpc-websockets (https://github.com/elpheria/rpc-websockets) - JSON-RPC 2.0 implementation over WebSockets for Node.js and JavaScript.
Protocols
▐ Implementation of protocols specs in pure javascript.
⟡ airswarm (https://github.com/mafintosh/airswarm) – Network swarm that automagically discovers other peers on the network using multicast dns.
⟡ bittorrent-dht (https://github.com/webtorrent/bittorrent-dht) – BitTorrent DHT protocol implementation.
⟡ bittorrent-protocol (https://github.com/webtorrent/bittorrent-protocol) – BitTorrent peer wire protocol implementation.
⟡ bittorrent-tracker (https://github.com/webtorrent/bittorrent-tracker) – BitTorrent tracker (client & server) implementation
⟡ bonjour (https://github.com/watson/bonjour) – A Bonjour/Zeroconf protocol implementation.
⟡ castv2 (https://github.com/thibauts/node-castv2) – An implementation of the Chromecast CASTV2 protocol.
⟡ dht-rpc (https://github.com/mafintosh/dht-rpc) – Make RPC calls over a Kademlia (https://pdos.csail.mit.edu/~petar/papers/maymounkov-kademlia-lncs.pdf) based DHT.
⟡ dns-discovery (https://github.com/mafintosh/dns-discovery) – Discovery peers in a distributed system using regular dns and multicast dns.
⟡ hypercore (https://github.com/mafintosh/hypercore) – A p2p network for distributing and replicating static feeds of binary data.
⟡ ipfs (https://github.com/ipfs/js-ipfs-api) – The InterPlanetary File System, a new peer-to-peer hypermedia protocol.
⟡ k-bucket (https://github.com/tristanls/k-bucket) – Kademlia DHT K-bucket implementation as a binary tree.
⟡ k-rpc (https://github.com/mafintosh/k-rpc) – Implementation of the k-rpc protocol used the BitTorrent DHT. Also see k-rpc-socket (https://github.com/mafintosh/k-rpc-socket).
⟡ mdns (https://github.com/agnat/node_mdns) – mdns/zeroconf/bonjour service discovery.
⟡ multicast-dns (https://github.com/mafintosh/multicast-dns) – Low level multicast-dns implementation.
⟡ peervision (https://github.com/mafintosh/peervision) – Live p2p streaming protocol.
⟡ polo (https://github.com/mafintosh/polo) – A zero configuration service discovery module.
⟡ rtsp-server (https://github.com/watson/rtsp-server) – A low level module for creating RTSP servers.
⟡ utp-native (https://github.com/mafintosh/utp-native) – micro transport protocol, a network protocol similar to tcp that runs on top of udp.