Skip to content

yusefnapora/w3name-rust-client

Repository files navigation


w3name-rust-client

Content addressing for a dynamic web. Now available from Rust!

About

w3name-rust-client provides a rust client library and a command line tool for interacting with the w3name service.

w3name is a service that implements IPNS, which is a protocol that uses public key cryptography to allow for updatable naming in an atomically verifiable way.

For more about w3name in general, see the main github repository.

w3name-rust-client provides two crates: w3name, which provides an HTTP client and tools for creating and validating name records, and w3name-cli, which lets you publish and resolve name records from the command line.

Status & API stability

This project is quite new, and there may be breaking API changes as things are developed. If you notice that the description below has drifted from the published API, please open an issue so we can update the docs!

Install & Usage

Please see the READMEs for the individual crates:

Binary CLI releases

To download a pre-compiled binary of the w3name command-line tool, grab the .tar.gz file for your platform from the latest release.

Nix

If you use the Nix package manager, you can start a new shell with the w3name command line tool installed:

nix shell github:yusefnapora/w3name-rust-client

The above assumes that you're using Nix flakes. If not, you can clone this repository and build a "legacy" package with:

nix-build . -A defaultPackage.x86_64-linux # or aarch64-linux, etc