libp2p implementation in Nim https://status-im.github.io/nim-libp2p/docs/
Go to file
Dmitriy Ryajov bcaed7c6b9 refactor: identify requires Optional[T] keys 2019-10-11 08:15:24 +09:00
chronos@7029f8bc1e wip: floodsub initial implementation 2019-10-11 08:15:24 +09:00
examples feat: native chat clean up 2019-10-11 08:15:24 +09:00
libp2p properly close transport 2019-10-11 08:15:24 +09:00
tests refactor: identify requires Optional[T] keys 2019-10-11 08:15:24 +09:00
.appveyor.yml Fix Appveyor problems with go-lang bug. 2019-10-07 21:56:08 +03:00
.gitignore misc: cleanup mplex 2019-10-11 08:15:24 +09:00
.travis.yml CI: always use the go-libp2p-daemon HEAD 2019-08-26 16:40:25 +02:00
LICENSE Initial commit 2018-11-19 03:58:31 +02:00
LICENSE-APACHEv2 Initialize travis and licenses. 2018-11-19 04:04:47 +02:00
LICENSE-MIT Initialize travis and licenses. 2018-11-19 04:04:47 +02:00
README.md Add license and stability badges. 2019-08-22 13:40:49 +03:00
libp2p.nim Fix varint import 2019-08-16 12:36:54 +02:00
libp2p.nimble adding chronicles dep 2019-10-11 08:15:24 +09:00

README.md

nim-libp2p

Build Status Build status License: Apache License: MIT Stability: experimental

Introduction

An implementation of libp2p in Nim, as a wrapper of the Libp2p Go daemon.

Note that you need Go 1.12+ for the below instructions to work!

Install dependencies and run tests with:

git clone https://github.com/status-im/nim-libp2p && cd nim-libp2p
nimble install
nimble test
git submodule update --init --recursive
go version
git clone https://github.com/libp2p/go-libp2p-daemon
cd go-libp2p-daemon
git checkout v0.0.1
go install ./...
cd ..

Try out the chat example:

nim c -r --threads:on examples\chat.nim

This will output a peer ID such as QmbmHfVvouKammmQDJck4hz33WvVktNEe7pasxz2HgseRu which you can use in another instance to connect to it.

./example/chat
/connect QmbmHfVvouKammmQDJck4hz33WvVktNEe7pasxz2HgseRu

You can now chat between the instances!

Chat example

API

Coming soon...

License

Licensed and distributed under either of

or

at your option. This file may not be copied, modified, or distributed except according to those terms.