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