DEV Community

Zheng "Bruce" Li for NKN

Posted on

2 1

NKN SDK: powering client side communication without servers

NKN GitHub SDK

What can developers do with NKN’s latest SDK, a decentralized communication stack that enables true peer to peer messaging, streaming, and file transfer? We would like to sort them into two main categories:

  • Things you can do ONLY with NKN SDK.

    1. Send and receive data for free between any NKN powered apps regardless of their network condition without setting up a server or relying on any third party services.
    2. Network agnostic: Neither sender nor receiver needs to have public IP address or port forwarding. NKN powered apps only establish outbound (websocket) connections, so Internet access is all they need. This is ideal for client side peer to peer communication.
  • Things you can do BETTER with NKN SDK

    1. Top level security: All data are end to end authenticated and encrypted. No one else in the world except sender and receiver can see or modify the content of the data. The same public key is used for both routing and encryption, eliminating the possibility of man in the middle attack.
    2. Decent performance: By aggregating multiple overlay paths concurrently, NKN powered apps can get ~100ms end to end latency and 10+mbps end to end session throughput between most international locations. This might sound modest, but it is actually faster than most file transfer services (e.g. instant messenger, gmail/google-drive, wetransfer.com, or dropbox)
    3. Everything is free, open source and decentralized.

NKN recently combined three Javascript SDKs (client, multi-client and wallet) into a single one, and added several important new features that developers will love.

  • NKN Client: Send and receive data for free between any NKN clients regardless their network condition without setting up a server or relying on any third party services. Data are end to end encrypted by default. Typically you might want to use multiclient instead of using client directly.
  • NKN MultiClient: Send and receive data using multiple NKN clients concurrently to improve reliability and latency. In addition, it supports session mode, a reliable streaming protocol similar to TCP based on ncp.
  • NKN Wallet: Wallet SDK for NKN blockchain. It can be used to create wallet, transfer token to NKN wallet address, register name, subscribe to topic, etc.

Several example applications that are built on NKN SDK are:

So if your application needs these unique communication capabilities of NKN, would like to simplify and get rid of the servers, or simply to reduce server costs, you can head to NKN’s Developer Portal as well as our github repository to get started:

https://www.nkn.org/developer/

https://github.com/nknorg/nkn-sdk-js

Qodo Takeover

Introducing Qodo Gen 1.0: Transform Your Workflow with Agentic AI

While many AI coding tools operate as simple command-response systems, Qodo Gen 1.0 represents the next generation: autonomous, multi-step problem-solving agents that work alongside you.

Read full post

Top comments (0)

AWS Q Developer image

Your AI Code Assistant

Generate and update README files, create data-flow diagrams, and keep your project fully documented. Built to handle large projects, Amazon Q Developer works alongside you from idea to production code.

Get started free in your IDE