From 1fa63d73f5208f58c2a6b848ede940250ea25bfe Mon Sep 17 00:00:00 2001 From: undecidedpathways <209157438+undecidedpathways@users.noreply.github.com> Date: Mon, 27 Jul 2026 07:01:23 -0400 Subject: [PATCH 1/2] Create project: Logos p2p Messaging --- src/projects/logos-p2p-messaging/index.yaml | 94 +++++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 src/projects/logos-p2p-messaging/index.yaml diff --git a/src/projects/logos-p2p-messaging/index.yaml b/src/projects/logos-p2p-messaging/index.yaml new file mode 100644 index 00000000..5e9c0309 --- /dev/null +++ b/src/projects/logos-p2p-messaging/index.yaml @@ -0,0 +1,94 @@ +categories: + - social-and-communications + - infrastructure +usecases: + - messaging + - node + - research-and-development +ecosystem: + - other +description: >- + Overview: + + Logos Messaging provides the messaging layer for the Logos stack, letting + applications send messages, relay data, and coordinate without relying on + centralised servers or exposing metadata to surveillance. + + + It uses a peer-to-peer relay network in which messages propagate across nodes + with no central broker, and it supports private one-to-one messaging, group + messaging, and public broadcast channels. + + + Messages can be encrypted end-to-end, and the relay network is designed to + resist traffic analysis, making it difficult for observers to determine who is + communicating with whom. + + + Delivery: + + A peer-to-peer messaging network with DoS protection via RLN (Rate Limiting + Nullifiers). Any application can use it to send and receive messages over an + open, censorship-resistant network. + + + Chat: + + A protocol and library that provides 1:1 and group conversations with + end-to-end encryption using de-MLS - everything an application needs to add + private chat without rolling its own protocol. + + + Usecases: + + Used in Status Messenger and Railgun. + + Formerly known as Waku. +sunset: false +assets_used: [] +links: + web: https://logos.co/technology-stack/messaging + forum: https://forum.research.logos.co/ + github: https://github.com/logos-messaging/ + docs: https://docs.logos.co/messaging/get-started/introduction-to-logos-messaging + blog: https://logos.co/media + twitter: https://x.com/Logos_devs + discord: https://discord.gg/Ykv4eZyHUJ +project_status: + version: testnet + live_status: true + mainnet: false + testnet: true +blockchain_features: + asset_custody_type: non-custody + opensource: true + upgradability: + enabled: true + p2p: true +privacy_policy: + defined: false + link: https://logos.co/privacy-policy +default_privacy: true +audits: + - name: Institute of Free Technology + url: https://logos.co/security +history: + - title: Waku + description: "Waku is now part of Logos Messaging, a family of modular + peer-to-peer protocols for secure communication. Initially, Waku was build + as part of Vac, now Logos Research (x: @LogosRnD). Today, Logos Messaging + is the peer-to-peer communication layer in the Logos technology stack." + link: https://oskarth.com/waku/ + - title: Logos Stack Unification + description: "Logos announces stack unification on November 20th, 2025. Codex, + Nomos, and Waku have been building essential pieces of decentralised + technology. Each had its own identity, its own community, and its own + product roadmap. But underneath the different projects was one shared + goal: to create a social movement and decentralised technology stack to + revitalise civil society. To push their mission forward and chart a new + path, Codex, Nomos, and Waku unified under one brand and one mission: + Logos. " + link: https://techstartups.com/2025/11/20/logos-unifies-under-one-identity-to-deliver-a-private-tech-stack-to-revitalise-civil-society/ +name: Logos p2p Messaging +have_token: false +id: logos-p2p-messaging From 8d70449a15034dcfd9dff3a68e904d4e5a11e6bd Mon Sep 17 00:00:00 2001 From: undecidedpathways <209157438+undecidedpathways@users.noreply.github.com> Date: Mon, 27 Jul 2026 07:01:24 -0400 Subject: [PATCH 2/2] Add logo for project: Logos p2p Messaging --- src/projects/logos-p2p-messaging/logo.png | Bin 0 -> 22462 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/projects/logos-p2p-messaging/logo.png diff --git a/src/projects/logos-p2p-messaging/logo.png b/src/projects/logos-p2p-messaging/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..4356eb947547c468af8ea80710f4498b8ac114c2 GIT binary patch literal 22462 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 literal 0 HcmV?d00001