Modular p2p messaging stack, with a focus on secure messaging. https://rfc.vac.dev/
Go to file
Aaryamann Challani c8e14ed836
feat(17/WAKU2-RLN-RELAY): multiple acceptable roots (#539)
* feat(17/WAKU2-RLN-RELAY): multiple acceptable roots

* chore(17/WAKU2-RLN-RELAY): fix inconsistency with naming

* fix(17/WAKU2-RLN-RELAY): waku-relay naming

Co-authored-by: fryorcraken.eth <110212804+fryorcraken@users.noreply.github.com>

* chore(17/WAKU2-RLN-RELAY): naming

Co-authored-by: Hanno Cornelius <68783915+jm-clius@users.noreply.github.com>

* fix(17/WAKU2-RLN-RELAY): clear reasoning behind why nodes have diff roots

* fix(17/WAKU2-RLN-RELAY): sembr and wording

* chore(17/WAKU2-RLN-RELAY): s/merkle/Merkle/ and network delay

* chore(17/WAKU2-RLN-RELAY): contributor notes

* fix(17/WAKU2-RLN-RELAY): formula for window size

* chore(17/WAKU2-RLN-RELAY): add explanation of formula

* chore(17/WAKU2-RLN-RELAY): address review

Co-authored-by: Sanaz Taheri <35961250+staheri14@users.noreply.github.com>

* chore(17/WAKU2-RLN-RELAY): block_time var

Co-authored-by: fryorcraken.eth <110212804+fryorcraken@users.noreply.github.com>
Co-authored-by: Hanno Cornelius <68783915+jm-clius@users.noreply.github.com>
Co-authored-by: Sanaz Taheri <35961250+staheri14@users.noreply.github.com>
2022-10-19 11:16:26 +05:30
.github chore: Add GH labels (#516) 2022-07-27 18:33:16 +08:00
archetypes Merge repo with rfc.vac.dev (#310) 2021-04-01 12:03:14 +08:00
content feat(17/WAKU2-RLN-RELAY): multiple acceptable roots (#539) 2022-10-19 11:16:26 +05:30
example-content Merge repo with rfc.vac.dev (#310) 2021-04-01 12:03:14 +08:00
layouts/docs Merge repo with rfc.vac.dev (#310) 2021-04-01 12:03:14 +08:00
resources/_gen/assets/scss Merge repo with rfc.vac.dev (#310) 2021-04-01 12:03:14 +08:00
static add(raw RFC): 34/WAKU2-PEER-EXCHANGE (#515) 2022-08-01 09:12:22 +02:00
themes Merge repo with rfc.vac.dev (#310) 2021-04-01 12:03:14 +08:00
.gitignore Merge repo with rfc.vac.dev (#310) 2021-04-01 12:03:14 +08:00
.gitmodules Merge repo with rfc.vac.dev (#310) 2021-04-01 12:03:14 +08:00
.pyspelling.yml Update main.yml (#136) 2020-05-28 11:46:43 +02:00
.remarkrc adds link checks (#131) 2020-05-21 12:20:44 +08:00
.textlintrc text-lint (#134) 2020-05-25 11:55:06 +02:00
README.md add " git submodule update --init" to readme (#514) 2022-07-21 12:25:23 +02:00
config.toml http -> https (#328) 2021-04-06 16:50:48 +08:00
netifly.toml Merge repo with rfc.vac.dev (#310) 2021-04-01 12:03:14 +08:00

README.md

Vac RFCs

This repository contains specifications for the Vac project. Vac is an R&D org creating modular p2p protocols for private, secure, and censorship-resistant communication. A detailed, albeit slightly outdated (2019), explanation of Vac and its design goals can be found here.

Vac RFCs (Request for Comments) includes specs for the Waku family of specs, but also other things such as: node discovery, data sync, recommendations around usage, spec process, interfacing with auxiliary systems such as distributed storage, payload encryption, and so on.

Vac, while having a core team of maintainers and contributors, is an open and permission-less organization.

See rfc.vac.dev for an easy to browse index of all RFCs.

Contributing

Please see 1/COSS for general guidelines and spec lifecycle.

Feel free to join the Vac discord. There's a channel specifically for RFC discussions.

Here's the project board used by core contributors and maintainers: https://github.com/orgs/vacp2p/projects/5

Building locally

Run git submodule update --init to install the Hugo "book" theme. Ensure you have the Hugo extended edition (https://gohugo.io/getting-started/installing/), then run hugo server.

These protocols define various components of the vac stack.

Style guide

Sequence diagrams are generated using Mscgen like this: mscgen -T png -i input.msc -o output.png. Both the source and generated image should be in source control. For ease of readability, the generated image is embedded inside the main spec document.

Alternatively, mscgenjs can be used to generate sequence diagrams (mscgenjs produces better quality figures especially concerning lines' spaces and figures' margins). Once installed, the following command can be used to generate the sequence diagrams mscgenjs -T png -i input.msc -o output.png. More details on the installation and compilation are given in mscgenjs repository. You may try the online playground https://mscgen.js.org/ as well to get a sense of the output figures.

Acknowledgement

Site layout and process inspired by https://rfc.zeromq.org/