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
perlin-network avatar

perlin-network/noise

0
View on GitHub↗
1,826 stars·207 forks·Go·MIT·18 viewsgodoc.org/github.com/perlin-network/noise↗

Noise

Noise is a peer-to-peer networking stack written in Go designed for building decentralized systems. It provides a framework for managing node lifecycles, establishing encrypted communication channels, and facilitating direct data exchange between distributed nodes without reliance on central authorities.

The library distinguishes itself through a modular architecture that allows developers to stack custom communication layers, enabling the creation of specialized network protocols. It incorporates a decentralized key-value lookup system for peer discovery and routing, alongside cryptographic identity verification that ensures message integrity and sender authenticity across the network.

The framework includes comprehensive tools for managing distributed system resources, such as connection pooling and traffic limits to maintain stability under load. It supports both synchronous request-response patterns and asynchronous message multiplexing, providing granular control over node behavior, security credentials, and connection states.

Features

  • Peer-to-Peer Networking Libraries - Implements a modular peer-to-peer networking stack for building decentralized systems with encrypted communication and custom protocol composition.
  • P2P Network Administration - Builds decentralized systems where nodes communicate directly without central authorities.
  • Distributed Hash Tables - Incorporates a distributed hash table for peer discovery and efficient network routing.
  • Distributed Communication Frameworks - Provides a comprehensive toolkit for managing node lifecycles, connection pooling, and resource-constrained traffic routing in distributed systems.
  • Peer Connection Managers - Automates the establishment and lifecycle management of encrypted peer-to-peer connections.
  • Peer Communication Security - Ensures private and authenticated communication between peers using encrypted sessions.
  • Authenticated Encryption Channels - Implements authenticated encryption channels to secure communication and verify peer identities.
  • Resource-Constrained - Maintains system stability by enforcing limits on concurrent traffic and automating peer connection eviction.
  • Connection Resource Managers - Manages node resources by enforcing limits on concurrent inbound and outbound traffic streams.
  • Custom Network Protocols - Provides a framework for developing and stacking custom network protocols.
  • Peer-to-Peer Networking - Manages distributed system resources to maintain stability and performance in peer-to-peer environments.
  • Structured Data Exchanges - Supports structured data exchange across peers with automatic serialization for reliable communication.
  • Peer-to-Peer Networking Extensions - Enables stacking custom communication modules to extend network functionality within the stack.
  • Decentralized Discovery Methods - Implements decentralized routing and peer discovery using distributed hash table protocols.
  • Stream Multiplexing - Supports multiplexing multiple independent data streams over a single encrypted peer-to-peer connection.
  • Remote Procedure Calls - Facilitates synchronous communication between distributed nodes using remote procedure calls.
  • Cryptographic Signing Methods - Provides cryptographic signing methods to verify message integrity and sender authenticity.
  • Binary Data Signing - Signs network data using node-specific keys to ensure message integrity and sender authenticity.
  • Peer Identity Verifications - Verifies the cryptographic identity of remote peers to ensure sender authenticity and message integrity across the network.
  • Node Lifecycle Management - Provides tools for managing node lifecycles, including protocol registration and connection state control.

Star history

Star history chart for perlin-network/noiseStar history chart for perlin-network/noise

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. 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

Frequently asked questions

What does perlin-network/noise do?

Noise is a peer-to-peer networking stack written in Go designed for building decentralized systems. It provides a framework for managing node lifecycles, establishing encrypted communication channels, and facilitating direct data exchange between distributed nodes without reliance on central authorities.

What are the main features of perlin-network/noise?

The main features of perlin-network/noise are: Peer-to-Peer Networking Libraries, P2P Network Administration, Distributed Hash Tables, Distributed Communication Frameworks, Peer Connection Managers, Peer Communication Security, Authenticated Encryption Channels, Resource-Constrained.

Which projects share features with perlin-network/noise?

Projects with overlapping indexed features include: libp2p/go-libp2p — go-libp2p is a Go implementation of the libp2p modular networking stack, providing a library for building peer-to-peer… davyxu/cellnet — Cellnet is a Go networking framework designed for building distributed systems and peer-to-peer networks. It provides… libp2p/libp2p — libp2p is a modular peer-to-peer networking stack designed for building decentralized applications. It provides the… libp2p/rust-libp2p — rust-libp2p is a modular peer-to-peer networking library written in Rust, implementing the libp2p specification. It… bitpay/bitcore — Bitcore is a blockchain development framework and a set of libraries used to build applications that interact with the… hashicorp/memberlist — Memberlist is a Go library used for maintaining distributed cluster membership and failure detection via a…

Curated searches featuring Noise

Hand-picked collections where Noise appears.
  • P2P network protocols

Projects sharing features with Noise

These projects share indexed features with Noise. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • libp2p/go-libp2plibp2p avatar

    libp2p/go-libp2p

    6,830View on GitHub↗

    go-libp2p is a Go implementation of the libp2p modular networking stack, providing a library for building peer-to-peer applications. It functions as a decentralized application framework that separates transport, security, and discovery layers into pluggable modules for cross-platform interoperability. The library establishes peer-to-peer connections through a modular transport abstraction that supports multiple protocols, while using public key cryptography for peer identity and protocol-agnostic security transports for encrypting and authenticating all traffic. It enables distributed peer d

    Golibp2pnetworking-stackp2p
    View on GitHub↗6,830
  • davyxu/cellnetdavyxu avatar

    davyxu/cellnet

    4,061View on GitHub↗

    Cellnet is a Go networking framework designed for building distributed systems and peer-to-peer networks. It provides a multi-protocol transport layer that standardizes message exchange across TCP, UDP, and WebSockets, utilizing a binary message codec system to map message types to unique identifiers for network transmission. The framework is distinguished by its remote procedure call library, which enables the execution of functions on remote peers using synchronous or asynchronous request patterns. It further differentiates itself with an asynchronous event dispatcher that processes network

    Go
    View on GitHub↗4,061
  • libp2p/libp2plibp2p avatar

    libp2p/libp2p

    2,940View on GitHub↗

    libp2p is a modular peer-to-peer networking stack designed for building decentralized applications. It provides the core infrastructure necessary for nodes to discover and connect with other participants across a network without relying on central servers. The project distinguishes itself through a flexible transport layer that abstracts multiple protocols, including TCP, QUIC, WebSockets, and WebTransport, into a single interface. It features specialized tools for NAT and firewall traversal, such as hole punching and relay nodes, to establish direct connections between peers and web browsers

    View on GitHub↗2,940
  • libp2p/rust-libp2plibp2p avatar

    libp2p/rust-libp2p

    5,556View on GitHub↗

    rust-libp2p is a modular peer-to-peer networking library written in Rust, implementing the libp2p specification. It provides a composable stack of transport, security, and discovery protocols that can be mixed and matched to build decentralized applications, with a central swarm manager coordinating all active connections, protocol negotiation, and peer lifecycle. The library distinguishes itself through a pluggable transport abstraction that supports TCP, QUIC, WebSocket, WebRTC, and WebTransport, enabling cross-platform operation across browsers, mobile devices, and servers. It secures ever

    Rustdecentralizationlibp2pnetworking
    View on GitHub↗5,556
  • Compare all 30 related projects→