mirror of
https://github.com/vacp2p/roadmap.git
synced 2026-01-09 21:58:07 -05:00
feat(p2p): universal connectivity app (#174)
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
---
|
||||
|
||||
title: nim-libp2p Universal Connectivity App
|
||||
tags:
|
||||
- "2025q2"
|
||||
- "p2p"
|
||||
- "ift"
|
||||
draft: false
|
||||
description: Add webtransport support to nim-libp2p
|
||||
|
||||
---
|
||||
|
||||
`vac:p2p:ift:2025q2-nimlibp2p-universal-connectivity-app`
|
||||
|
||||
Realtime highly decentralised chat app.
|
||||
|
||||
## Description
|
||||
|
||||
Create an example chat application that demonstrates libp2p features using gossipsub for messaging,
|
||||
and WSS, Quic, and TCP transports.
|
||||
This app should be published at the [libp2p/universal-connectivity](https://github.com/libp2p/universal-connectivity) repository.
|
||||
A future commitment might add support of Kad-DHT to discover nodes,
|
||||
and additional transports like WebTransport/WebRTC/WebRTC-direct as transports (once they're available in nim-libp2p).
|
||||
|
||||
## Task List
|
||||
|
||||
### Chat
|
||||
* fully qualified name: `vac:p2p:ift:2025q2-nimlibp2p-universal-connectivity-app:chat`
|
||||
* owner: gabe
|
||||
* status:
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
Using either [directchat.nim](https://github.com/vacp2p/nim-libp2p/blob/master/examples/directchat.nim) or [chat2](https://github.com/waku-org/nwaku/tree/master/apps/chat2),
|
||||
implement a chat application that can interop successfully with other implementations available at [libp2p/universal-connectivity](https://github.com/libp2p/universal-connectivity/tree/main).
|
||||
|
||||
#### Deliverables
|
||||
- Minimal TUI (send/receive messages, join chatrooms)
|
||||
- Connect directly to peers by specifying the peers multiaddresses
|
||||
- NAT support (upnp/pmp) (logic can be extracted from nwaku `wakunode2`.)
|
||||
- Interop
|
||||
|
||||
|
||||
### File Exchange
|
||||
* fully qualified name: `vac:p2p:ift:2025q2-nimlibp2p-universal-connectivity-app:file-exchange`
|
||||
* owner: gabe
|
||||
* status:
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
Allow sending/receiving files. Must react to messages sent of the file exchange topic.
|
||||
|
||||
#### Deliverables
|
||||
- Basic UI - Receive file message
|
||||
- Allow sending file (maybe with a chat command `/file path/to/file`)
|
||||
- Interop
|
||||
@@ -25,6 +25,7 @@ Major future work items on nim-libp2p (also beyond this reporting period are cap
|
||||
* [[p2p/ift/2025q2-nimlibp2p-kademlia|2025q2-nimlibp2p-kademlia]]
|
||||
* [[p2p/ift/2025q2-nimlibp2p-maintenance|2025q2-nimlibp2p-maintenance]]
|
||||
* [[p2p/ift/2025q2-nimlibp2p-webtransport|2025q2-nimlibp2p-webtransport]]
|
||||
* [[p2p/ift/2025q2-nimlibp2p-universal-connectivity-app|2025q2-nimlibp2p-universal-connectivity-app]]
|
||||
|
||||
#### `vac:`
|
||||
* [[p2p/vac/2025q2-nimlibp2p-test-coverage|2025q2-nimlibp2p-test-coverage]]
|
||||
|
||||
Reference in New Issue
Block a user