awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
peers avatar

peers/peerjs

0
View on GitHub↗
13,359 stars·1,461 forks·TypeScript·MIT·21 viewspeerjs.com↗

Peerjs

PeerJS is a real-time communication library and framework designed to establish direct peer-to-peer data and media connections between browsers. It provides a simplified wrapper for managing the lifecycles of WebRTC connectivity, enabling the exchange of audio, video, and data without a central relay.

The project includes a coordination server that handles signaling management by mapping unique user identities to network connection details. This server facilitates the discovery of remote peers and the exchange of metadata required to perform the initial connection handshake.

The framework supports several communication patterns, including real-time video calling, decentralized data messaging, and direct binary file transfers. It utilizes an event-driven system to manage connection states and employs heartbeat monitoring to track the health of active peer sessions.

Features

  • Peer Connectivity - Establishes direct browser-to-browser data and media channels using the WebRTC protocol for low-latency communication.
  • Real-time Communication Libraries - Provides a library for streaming audio, video, and data messages directly between clients without a central relay.
  • Peer Discovery - Maps unique user identities to network details via a registry to facilitate peer discovery.
  • Signaling Servers - Includes a coordination server to exchange connection metadata and identity descriptors for peer handshakes.
  • Real-time Communication - Facilitates low-latency data exchange and media streaming through direct browser-to-browser connections.
  • WebRTC Wrappers - Provides a simplified API wrapper for managing WebRTC connection lifecycles and peer discovery.
  • P2P Frameworks - Offers a comprehensive framework for establishing direct peer-to-peer data and media connections between browsers.
  • Heartbeat Monitors - Employs periodic heartbeat pings to monitor active connection health and prune dead peer sessions.
  • Browser-Based Video Calling - Enables the implementation of real-time audio and video calls between browsers using coordinated media streams.
  • Decentralized Messaging - Supports the creation of chat and collaborative tools where messages travel directly between peers.
  • Peer-to-Peer File Sharing - Allows sending and receiving binary files directly between users via decentralized WebRTC channels.
  • Connection Lifecycle Managers - Provides an event-driven system to manage peer states and network transitions throughout the connection lifecycle.

Star history

Star history chart for peers/peerjsStar history chart for peers/peerjs

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Peerjs

Similar open-source projects, ranked by how many features they share with Peerjs.
  • ianramzy/decentralized-video-chatianramzy avatar

    ianramzy/decentralized-video-chat

    3,313View on GitHub↗

    This project is a browser-based video conferencing platform that facilitates direct, peer-to-peer communication between participants. By utilizing browser-native media capture and direct network connections, it enables real-time audio, video, and screen sharing without relying on central media relay servers. The platform distinguishes itself through its focus on ephemeral, private communication. It generates unique, short-lived session identifiers for virtual rooms that exist only in memory, ensuring that no persistent user accounts or long-term storage are required. To maintain connection st

    javascriptnodejspeer-to-peer
    View on GitHub↗3,313
  • awesome-selfhosted/awesome-selfhostedawesome-selfhosted avatar

    awesome-selfhosted/awesome-selfhosted

    299,516View on GitHub↗

    This project is a community-curated directory of open-source software designed for deployment in private server environments and home labs. It serves as a comprehensive resource for discovering independent, self-hosted alternatives to mainstream cloud services, enabling users to maintain full data ownership and control over their digital infrastructure. The directory is structured through a hierarchical taxonomy that organizes a vast collection of applications into logical categories, ranging from media management and data analytics to private communication and team productivity tools. It dis

    awesomeawesome-listcloud
    View on GitHub↗299,516
  • mistweaverco/bananasmistweaverco avatar

    mistweaverco/bananas

    6,238View on GitHub↗

    Bananas is a peer-to-peer screen sharing application that uses WebRTC to establish direct browser-to-browser connections, enabling real-time screen sharing without routing data through a central server. The application assigns ephemeral identity tokens tied only to session IDs, eliminating the need for user accounts or persistent login systems, and generates unique alphanumeric session URLs for one-click joining. The application distinguishes itself through collaborative multi-cursor overlays, where each participant's cursor is rendered as an HTML5 Canvas layer composited over the shared scre

    Sveltecross-platformmulti-cursorp2p
    View on GitHub↗6,238
  • peers/peerjs-serverpeers avatar

    peers/peerjs-server

    4,684View on GitHub↗

    PeerJS Server is a WebRTC signaling server and connection broker that coordinates handshakes between clients to establish direct peer-to-peer connections. It functions as a coordination point for discovering peer identifiers and initiating real-time media and data streams between remote browser clients. The project can be deployed as a dedicated signaling server or integrated as Node.js middleware within an existing web application to share a single network port. It manages the lifecycle of peer connections through a centralized signaling process, assigning unique identifiers to clients and m

    TypeScriptnodejspeerjsserver
    View on GitHub↗4,684
See all 30 alternatives to Peerjs→

Frequently asked questions

What does peers/peerjs do?

PeerJS is a real-time communication library and framework designed to establish direct peer-to-peer data and media connections between browsers. It provides a simplified wrapper for managing the lifecycles of WebRTC connectivity, enabling the exchange of audio, video, and data without a central relay.

What are the main features of peers/peerjs?

The main features of peers/peerjs are: Peer Connectivity, Real-time Communication Libraries, Peer Discovery, Signaling Servers, Real-time Communication, WebRTC Wrappers, P2P Frameworks, Heartbeat Monitors.

What are some open-source alternatives to peers/peerjs?

Open-source alternatives to peers/peerjs include: ianramzy/decentralized-video-chat — This project is a browser-based video conferencing platform that facilitates direct, peer-to-peer communication… awesome-selfhosted/awesome-selfhosted — This project is a community-curated directory of open-source software designed for deployment in private server… samdutton/simpl — Simpl is an HTML, CSS, and JavaScript example library that provides a collection of minimal functional demonstrations… mistweaverco/bananas — Bananas is a peer-to-peer screen sharing application that uses WebRTC to establish direct browser-to-browser… peers/peerjs-server — PeerJS Server is a WebRTC signaling server and connection broker that coordinates handshakes between clients to… webrtc/apprtc — apprtc is a WebRTC video chat application and signaling server designed to establish peer-to-peer audio and video…