Introduction to Waku
Waku is a family of robust, censorship-resistant, peer-to-peer communication protocols that enable privacy-focused messaging for Web3 applications, allowing you to integrate decentralised communication features into your dApp without compromising security or privacy.
Check out our Learn section, YouTube channel, and Blog to dive into how Waku works behind the scenes!
What isn’t Waku?
- Waku is not a blockchain but a network composed of protocols designed for Web3 communication, operating without the need for gas fees.
- Waku is not just for messaging applications; it supports the development of complex applications that require secure and private data transmission.
- Waku is not a long-term data storage network; it focuses on short, ephemeral, real-time messaging.
What can Waku be used for?
- Chat Messengers: Waku can be used to build private, decentralised chat apps resistant to censorship.
- Voting and Proposals: Exchange votes on proposals off-chain via Waku to save gas fees, then submit aggregated results to the blockchain.
- NFT Marketplaces: Use Waku to handle off-chain NFT bids and offers for gas savings, and to integrate social interactions like likes and comments.
- State Channels: Establish and maintain state channels with Waku, facilitating seamless message exchanges and updates without blockchain interaction.
- Signature Exchange for Multi-Signature Wallets: Allow multi-signature wallet owners to exchange signatures privately and securely through Waku.
- Game Mechanics Communication: Implement Waku as a communication layer for decentralised, peer-to-peer gaming, avoiding centralised infrastructure.
- Layer 2 Coordination (Open Market, Spam Protected Mempool): Broadcast and aggregate Layer 2 transactions via Waku to enhance privacy and scalability, reducing network load.
- Social Media Platforms: Beyond chat messengers, use Waku for decentralised, censorship-resistant social media platforms like news feeds and multimedia sharing.
Looking for what to build with Waku? Discover a collection of sample ideas and use cases for inspiration, curated by our community at: https://ideas.waku.org/ and Awesome Waku.
Case studies
Getting started
Run a Waku node
Waku is a decentralised, permissionless system where anyone can run a node, use the network, and contribute to its support. We recommend following the Run Nwaku with Docker Compose guide and Waku Node Operator Cheatsheet to easily run a node.
If you encounter issues running your node or require assistance with anything, please visit the #node-help channel on our Discord.
Integrate using SDKs
Waku is implemented in multiple SDKs, allowing it to integrate with different languages and address various use cases efficiently.
Description | Documentation | |
---|---|---|
@waku/sdk | JavaScript/TypeScript SDK designed for browser environments | JavaScript Waku SDK |
@waku/react | React components and UI adapters designed for seamless integration with @waku/sdk | Build React DApps Using @waku/react |
Other integrations
Description | Documentation | |
---|---|---|
REST API | REST API interface provided by nwaku and go-waku to interact with the Waku Network | Waku Node REST API Reference |
@waku/create-app | Starter kit to bootstrap your next @waku/sdk project from various example templates | Scaffold DApps Using @waku/create-app |
Explore some example apps built using Waku at https://examples.waku.org/ and view a list of projects and workshops from previous hackathons at Awesome Waku.