Introduction
Overview
HydroRTC is a server-client library that has been developed with the primary purpose to enhance transfer and communication of large datasets leveraging different web technologies commonly found in the web browser, such as Web Sockets, WebRTC, and Node.js to enable seamless peer-to-peer data sharing, smart data transmission, and large dataset streaming.
It has been designed with the following structure:
- Server-to-Peer component: built using the Socket.IO library, the server component allows for the utilization of a robust server-side implementation for user tracking, data handlers, and security layers.
- Peer-to-Peer Component: allows for the connection between peers using the Peer.js library for two-way communication, data exchange, and collaboration.
The code has been developed considering an open-source, open-ended ontology in which the user can modify the library based on the end-use case required. This means that the user is able to port different type of coding structures into the engine following the guidelines described in the repository and throughout this tutorial.
It is a purely computational library developed to run computationally expensive code on the client-side without any dependencies.
Architecture
Open-Source Nature
The code has been developed considering an open-source, open-ended ontology in which the user can modify or add to the exisisting client or server side implementations based on the end-use. This means that the user is able to port different type of coding structures into the engine following the guidelines described in the repository and throughout this tutorial.