HelloZeroNet / HelloZeroNet/ZeroNet

ZeroNet as a platform for overlay networks.

Abierto
#1,820 9 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
JavaScript
Estrellas
18.8k
Forks
2.3k
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Can ZeroNet be used as a library to create an overlay network of nodes interested in topic `foo/1.2.3` and let them exchange with arbitrary messages? Number of nodes: ~1M. Message size: < 1 KB.

For example, I want to make a distributed p2p version of a books catalogue. Ther catalogue has a well-known name, e.g. `books/1.2.3`. Nodes use this name to discover other nodes connected to this overlay network. Once connected, they download the list of book ids from a peer. If someone wants to add a book, they send its id to a few peers, they add it to the local storage and re-transmit to other peers. An important property of this system is that all the nodes are equal: there is no admin who has special rights. There is no special private key that has special rights in this catalogue.

API needed for this:
- `join("books/1.2.3")` finds a few peers in this overlay network
- `peers("books/1.2.3")` returns the list of online peers we're currently connected to
- `send("books/1.2.3", peerId, "howdy")` sends a message to the given peer
- `listen("books/1.2.3", callback)` gets messages sent by other peers with the `send()` API

Thoughts?

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

The issue does not identify files, tests, or an implementation entry point. First determine whether ZeroNet supports the proposed overlay-network model and API, then define the architecture and acceptance criteria for peer discovery, messaging, storage, and equal node permissions.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Área
distributed-systems, networking
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
20/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.