# go-libp2p-core

[![](https://img.shields.io/badge/made%20by-Protocol%20Labs-blue.svg?style=flat-square)](https://protocol.ai)
[![](https://img.shields.io/badge/project-libp2p-yellow.svg?style=flat-square)](https://libp2p.io/)
[![](https://img.shields.io/badge/freenode-%23libp2p-yellow.svg?style=flat-square)](http://webchat.freenode.net/?channels=%23libp2p)
[![GoDoc](https://godoc.org/github.com/libp2p/go-libp2p-core?status.svg)](https://godoc.org/github.com/libp2p/go-libp2p-core)
[![Coverage Status](https://coveralls.io/repos/github/libp2p/go-libp2p-core/badge.svg?branch=master)](https://coveralls.io/github/libp2p/go-libp2p-core?branch=master)
[![Build Status](https://travis-ci.org/libp2p/go-libp2p-core.svg?branch=master)](https://travis-ci.org/libp2p/go-libp2p-core)
[![Discourse posts](https://img.shields.io/discourse/https/discuss.libp2p.io/posts.svg)](https://discuss.libp2p.io)

> Home to the interfaces and abstractions that make up go-libp2p.

Minimum go version: 1.13

## Install

```sh
go get github.com/libp2p/go-libp2p-core
```

## Usage

Check out the [GoDocs](https://godoc.org/github.com/libp2p/go-libp2p-core).

## Testing
To test instantiations of interfaces and abstractions, you can use the [test suite](https://github.com/libp2p/go-libp2p-testing/tree/master/suites).

## License

Dual-licensed under MIT and ASLv2, by way of the [Permissive License Stack](https://protocol.ai/blog/announcing-the-permissive-license-stack/).
